{
  "title": "RCI Robot System Index",
  "version": "0.8.21",
  "released": "2026-08-13",
  "canonical": "https://robotcomponentindex.com/robots/",
  "recordCount": 31,
  "selectedDeclaredEntryCount": 1730,
  "commitAddressableBomCount": 30,
  "completeRebuildEvidencePackageCount": 0,
  "normalizedBomItemCount": 1730,
  "manufacturerRelationCount": 12,
  "exactComponentRelationCount": 20,
  "lifecycleRelationCount": 21,
  "topologyNodeCount": 168,
  "interfaceRelationCount": 159,
  "topologyProfileCount": 28,
  "physicallyValidatedInterfaceRelationCount": 0,
  "representedMorphologies": [
    "desktop-arm",
    "humanoid",
    "mobile-base",
    "quadruped",
    "mobile-manipulator"
  ],
  "targetMorphologies": [
    "desktop-arm",
    "humanoid",
    "mobile-base",
    "quadruped",
    "mobile-manipulator"
  ],
  "rightsNotice": "RCI publishes source mapping, publication-surface counts, disclosure states and editorial findings. It does not redistribute the third parties’ full BOM rows, CAD, product images, marks, live prices or retailer data. Linked material remains with its respective owners and under its respective terms.",
  "completenessBoundary": "A public BOM proves only what the responsibility party declared at the selected source and revision. It does not independently prove current availability, qualified substitutions, safe wiring, regulatory suitability, performance, a unit-level as-built configuration or successful independent replication.",
  "countBoundary": "The selected entries are rows or list items on unlike publication surfaces. They include nested assemblies, generic groups, tools, alternatives and cross-platform table rows. They are not unique components and must not be used as a complexity ranking.",
  "profiles": [
    {
      "id": "bom-audit-so101-follower",
      "platform": "SO-101 follower arm",
      "responsibilityParty": "Hugging Face LeRobot / TheRobotStudio",
      "morphology": "desktop-arm",
      "platformRevisionBoundary": "SO-101 follower arm at the selected LeRobot documentation and SO-ARM100 repository commits; 7.4 V servo variant boundary retained.",
      "selectedBomSurface": "TheRobotStudio SO-ARM100 README procurement table plus SO-101 printable-part lists",
      "bomFormat": "markdown-table",
      "declaredEntryCount": 17,
      "entryCountBoundary": "Six follower-arm procurement rows excluding the Total row, plus eleven individually listed common and follower-specific printable parts. Tools and fixtures remain inside the procurement-table publication boundary.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The current SO-101 material is commit-addressable but not bound to an SO-101 release tag; the repository’s only selected release predates the current SO-101 main branch.",
      "lifecycleBoundary": "LeRobot calls SO-101 the current flagship and the repository documents the move from SO-100; the current material also distinguishes 7.4 V and 12 V servo variants.",
      "strongestPublishedEvidence": "Exact servo variants and gear ratios, regional procurement links, voltage warning, assembly guidance, and downloadable STL/STEP/URDF assets.",
      "largestRebuildGap": "No release-tagged BOM snapshot, unit-level as-built manifest, or independent rebuild package is tied to the current list.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this record.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "partial",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "editorialBoundary": "A commit-pinned current list narrows what RCI audited, but it does not prove that every linked item is available, substituted parts are qualified, or one built arm matches the list.",
      "sources": [
        {
          "id": "so101-lerobot-doc",
          "title": "LeRobot SO-101 documentation",
          "url": "https://github.com/huggingface/lerobot/blob/d23b65416ff1042a7268eea6e3671d18ec37d29d/docs/source/so101.mdx",
          "location": "SO-101 identity, flagship status, build boundary and links to official hardware material",
          "revision": "Commit d23b654 · 2026-07-30"
        },
        {
          "id": "so101-bom-readme",
          "title": "TheRobotStudio SO-ARM100 hardware README",
          "url": "https://github.com/TheRobotStudio/SO-ARM100/blob/7629d2ad9853d10fb903093a33ef6114099d97e5/README.md",
          "location": "Follower-arm procurement rows, servo variants, regional links, voltage warning and printable-part lists",
          "revision": "Commit 7629d2a · 2026-08-05"
        },
        {
          "id": "so101-hardware-repository",
          "title": "TheRobotStudio SO-ARM100 repository",
          "url": "https://github.com/TheRobotStudio/SO-ARM100",
          "location": "CAD, printable parts, URDF, repository activity and Apache-2.0 repository license metadata"
        }
      ],
      "completeRebuildEvidencePackage": false,
      "verifiedDate": "2026-08-10",
      "slug": "so-101-follower-arm",
      "href": "/robots/so-101-follower-arm/",
      "morphologyLabel": "Desktop arm",
      "publishedDisclosureCount": 5,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 63,
      "sourceCount": 3,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "so101-follower-sts3215-c001",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Parts for One Follower Arm",
          "evidenceState": "responsibility-party-published",
          "name": "STS3215 Servo 7.4V, 1/345 gear (C001)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "STS3215",
          "variant": "7.4 V · 1/345 gear · C001",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Six servos are published for one follower arm at the selected source revision.",
          "role": "Six-axis follower-arm actuation",
          "procurementBoundary": "The responsibility-party table provides regional retailer links; RCI does not republish live price or retailer content.",
          "includedInRobotBuild": true,
          "unresolved": [
            "The selected table does not publish a manufacturer part number separate from STS3215 and variant code C001.",
            "No unit serials or lot revisions are bound to the list."
          ]
        },
        {
          "id": "so101-follower-motor-control-board",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Parts for One Follower Arm",
          "evidenceState": "responsibility-party-published",
          "name": "Motor Control Board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One board is published for one follower arm.",
          "role": "Host-to-servo control interface",
          "procurementBoundary": "A retailer link is present, but the selected row label does not itself publish an exact manufacturer and orderable model.",
          "includedInRobotBuild": true,
          "unresolved": [
            "Exact board identity and hardware revision are not stated in the row label.",
            "Connector and firmware revision are not bound to the BOM row."
          ]
        },
        {
          "id": "so101-follower-usb-c-cable-bundle",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Parts for One Follower Arm",
          "evidenceState": "responsibility-party-published",
          "name": "USB-C Cable 2 pcs",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The table publishes amount 1 for a row labelled “USB-C Cable 2 pcs”; RCI preserves one bundle containing two cables rather than silently converting it to two line items.",
          "role": "Power / data cabling between the host, controller and arm setup",
          "procurementBoundary": "Connector ends, cable length, current rating and USB data capability are not stated in the row label.",
          "includedInRobotBuild": true,
          "unresolved": [
            "Exact connector pair, length and electrical rating are not published in the BOM label."
          ]
        },
        {
          "id": "so101-follower-power-supply",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Parts for One Follower Arm",
          "evidenceState": "responsibility-party-published",
          "name": "Power Supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Follower-arm table is inside the selected 7.4 V servo boundary",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One supply is published for one follower arm.",
          "role": "External arm power source",
          "procurementBoundary": "The surrounding documentation distinguishes 5 V and 12 V supply paths, but the BOM row does not publish an exact orderable supply identity.",
          "includedInRobotBuild": true,
          "unresolved": [
            "Exact voltage, current rating, connector, polarity and regulatory variant are not stated in the row label."
          ]
        },
        {
          "id": "so101-follower-table-clamp-bundle",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Parts for One Follower Arm",
          "evidenceState": "responsibility-party-published",
          "name": "Table Clamp 2 pcs",
          "itemClass": "fixture",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The table publishes amount 1 for a row labelled “Table Clamp 2pcs”; RCI preserves the bundle boundary.",
          "role": "Work-surface mounting fixture",
          "procurementBoundary": "Clamp dimensions, load rating and exact product identity are not stated in the row label.",
          "includedInRobotBuild": true,
          "unresolved": [
            "The source does not bind the clamps to a structural load limit or table-thickness range."
          ]
        },
        {
          "id": "so101-follower-screwdriver-set",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Parts for One Follower Arm",
          "evidenceState": "responsibility-party-published",
          "name": "Screwdriver Set",
          "itemClass": "tool",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Phillips #0 and #1 recommended in the selected source note",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One tool set is listed; the source note says the exact set is not required.",
          "role": "Assembly and removal tool",
          "procurementBoundary": "Tooling is retained as a build dependency but is not treated as installed robot hardware.",
          "includedInRobotBuild": false,
          "unresolved": [
            "No exact tool model is required by the responsibility party."
          ]
        },
        {
          "id": "so101-follower-base-motor-holder",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Base_motor_holder_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Base_motor_holder_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-base",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Base_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Base_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-base-motor-holder-plate",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Motor_holder_SO101_Base.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Motor_holder_SO101_Base.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-wrist-motor-holder",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Motor_holder_SO101_Wrist.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Motor_holder_SO101_Wrist.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-under-arm",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Under_arm_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Under_arm_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-upper-arm",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Upper_arm_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Upper_arm_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-rotation-pitch",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Rotation_Pitch_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Rotation_Pitch_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-wrist-roll-pitch",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "Wrist_Roll_Pitch_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Wrist_Roll_Pitch_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-waveshare-mounting-plate",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Common Parts",
          "name": "WaveShare_Mounting_Plate_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "WaveShare_Mounting_Plate_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure used by leader and follower variants",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-moving-jaw",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Follower-Specific Parts",
          "name": "Moving_Jaw_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Moving_Jaw_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure specific to the follower variant",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        },
        {
          "id": "so101-follower-wrist-roll",
          "robotRecordId": "bom-audit-so101-follower",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceSection": "Individual Part Files / Follower-Specific Parts",
          "name": "Wrist_Roll_Follower_SO101.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Wrist_Roll_Follower_SO101.stl",
          "variant": "SO-101 follower arm",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected file list names the part but does not publish the number of printed copies required for one follower arm.",
          "role": "Printed structure specific to the follower variant",
          "procurementBoundary": "Custom printable file; material, print parameters and post-processing remain separate build inputs.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "As-built printed quantity is not published in the selected list.",
            "No unit-level print manifest binds one physical arm to this file revision."
          ]
        }
      ],
      "normalizedBomItemCount": 17,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "so100-to-so101",
          "robotRecordId": "bom-audit-so101-follower",
          "relationType": "version-upgrade",
          "from": "SO-100 robot arm",
          "to": "SO-101 robot arm",
          "effectiveBoundary": "The pinned responsibility-party repository calls SO-101 the next-generation version of SO-100 and marks the retained SO-100 documentation as deprecated.",
          "systemImpact": "Wiring, assembly procedure and leader-arm motor selection changed; SO-100 evidence must not be silently applied to the SO-101 follower configuration.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "so101-bom-readme",
          "sourceRevision": "TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "unresolved": "The selected source does not publish a field-by-field migration BOM, serial cutover, drop-in upgrade guarantee or RCI physical comparison."
        }
      ],
      "topologyNodes": [
        {
          "id": "so101-follower-external-host",
          "robotRecordId": "bom-audit-so101-follower",
          "label": "External LeRobot host computer",
          "nodeKind": "external-host",
          "configurationBoundary": "Computer used to discover the MotorBus USB port, configure motor IDs and baud rate, calibrate and operate one SO-101 follower arm at the pinned LeRobot revision.",
          "sourceBomItemIds": [
            "so101-follower-usb-c-cable-bundle"
          ],
          "identityBoundary": "The selected BOM does not publish a host SKU, operating-system image, USB controller, LeRobot environment lock, physical port or serialised computer."
        },
        {
          "id": "so101-follower-motorbus-controller",
          "robotRecordId": "bom-audit-so101-follower",
          "label": "Follower MotorBus controller board",
          "nodeKind": "control",
          "configurationBoundary": "One follower-arm Motor Control Board connected to the host over USB and to the first servo through a three-pin cable.",
          "sourceBomItemIds": [
            "so101-follower-motor-control-board",
            "so101-follower-usb-c-cable-bundle"
          ],
          "identityBoundary": "The BOM row is generic. The setup guide mentions a Waveshare-board jumper condition only as a conditional instruction; it does not prove every BOM instance is one exact Waveshare orderable model or hardware revision."
        },
        {
          "id": "so101-follower-six-servo-chain",
          "robotRecordId": "bom-audit-so101-follower",
          "label": "Six-servo STS3215 follower chain",
          "nodeKind": "actuation",
          "configurationBoundary": "Six STS3215 7.4 V, 1/345, C001 follower-arm servos with unique IDs 1–6 and a common bus baud rate after setup.",
          "sourceBomItemIds": [
            "so101-follower-sts3215-c001"
          ],
          "identityBoundary": "Variant names and quantity are published, but no manufacturer part number separate from STS3215/C001, serials, EEPROM dump, firmware, calibrated offsets, cable identities, wear state or measured torque are bound to one arm."
        },
        {
          "id": "so101-follower-printed-arm-assembly",
          "robotRecordId": "bom-audit-so101-follower",
          "label": "Pinned SO-101 follower printed-arm assembly",
          "nodeKind": "assembly",
          "configurationBoundary": "Eleven pinned follower/common STL file identities plus the table-clamp fixture boundary for one SO-101 follower arm.",
          "sourceBomItemIds": [
            "so101-follower-base-motor-holder",
            "so101-follower-base",
            "so101-follower-base-motor-holder-plate",
            "so101-follower-wrist-motor-holder",
            "so101-follower-under-arm",
            "so101-follower-upper-arm",
            "so101-follower-rotation-pitch",
            "so101-follower-wrist-roll-pitch",
            "so101-follower-waveshare-mounting-plate",
            "so101-follower-moving-jaw",
            "so101-follower-wrist-roll",
            "so101-follower-table-clamp-bundle"
          ],
          "identityBoundary": "The selected file list does not publish print count per STL, material lot, slicing profile, printer, dimensions, tolerances, fastener manifest, post-processing or one inspected as-built arm."
        },
        {
          "id": "so101-follower-external-power",
          "robotRecordId": "bom-audit-so101-follower",
          "label": "Follower external power-supply boundary",
          "nodeKind": "power",
          "configurationBoundary": "One supply connected to the follower controller board. The selected follower BOM is the 7.4 V-servo configuration; project notes separately describe a 12 V servo option requiring a 12 V / 5 A-or-greater supply.",
          "sourceBomItemIds": [
            "so101-follower-power-supply"
          ],
          "identityBoundary": "The follower BOM row does not state an exact supply SKU, output voltage/current, connector, polarity, protection, regulatory variant or measured loaded output; the optional 12 V path is not merged into this 7.4 V servo profile."
        }
      ],
      "interfaceRelations": [
        {
          "id": "so101-host-motorbus-usb",
          "robotRecordId": "bom-audit-so101-follower",
          "fromNodeId": "so101-follower-external-host",
          "toNodeId": "so101-follower-motorbus-controller",
          "relationType": "data-control",
          "interfaceLabel": "USB host-to-MotorBus controller path",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "huggingface/lerobot commit d23b65416ff1042a7268eea6e3671d18ec37d29d plus TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceUrl": "https://github.com/huggingface/lerobot/blob/d23b65416ff1042a7268eea6e3671d18ec37d29d/docs/source/so101.mdx",
          "sourceBomItemIds": [
            "so101-follower-motor-control-board",
            "so101-follower-usb-c-cable-bundle"
          ],
          "evidenceText": "The pinned LeRobot setup requires connecting MotorBus to the computer over USB, discovers its serial port and then uses that port for follower setup and calibration.",
          "unresolved": [
            "Controller model/revision, USB connector pairing, cable data capability, host port, USB descriptor, driver, device mapping and latency are not frozen.",
            "RCI has not enumerated this controller or run LeRobot against a physical SO-101 arm."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "so101-motorbus-six-servo-chain",
          "robotRecordId": "bom-audit-so101-follower",
          "fromNodeId": "so101-follower-motorbus-controller",
          "toNodeId": "so101-follower-six-servo-chain",
          "relationType": "data-control",
          "interfaceLabel": "Three-pin controller-to-servo link and six-device daisy chain",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "huggingface/lerobot commit d23b65416ff1042a7268eea6e3671d18ec37d29d plus TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceUrl": "https://github.com/huggingface/lerobot/blob/d23b65416ff1042a7268eea6e3671d18ec37d29d/docs/source/so101.mdx",
          "sourceBomItemIds": [
            "so101-follower-motor-control-board",
            "so101-follower-sts3215-c001"
          ],
          "evidenceText": "The pinned guide explicitly requires a three-pin cable from controller to motor, assigns each motor a unique ID, requires one common baud rate and then instructs chaining each motor to the next with shoulder-pan ID 1 connected first to the controller.",
          "unresolved": [
            "Exact cable count/length, pinout, chain order beyond the first servo, physical IDs, baud-rate value, EEPROM state, feedback timing and error recovery are not frozen.",
            "RCI has not inspected wiring, captured bus traffic or moved any joint."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "so101-power-controller-input",
          "robotRecordId": "bom-audit-so101-follower",
          "fromNodeId": "so101-follower-external-power",
          "toNodeId": "so101-follower-motorbus-controller",
          "relationType": "power",
          "interfaceLabel": "External supply to follower controller board",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "huggingface/lerobot commit d23b65416ff1042a7268eea6e3671d18ec37d29d plus TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceUrl": "https://github.com/huggingface/lerobot/blob/d23b65416ff1042a7268eea6e3671d18ec37d29d/docs/source/so101.mdx",
          "sourceBomItemIds": [
            "so101-follower-power-supply",
            "so101-follower-motor-control-board"
          ],
          "evidenceText": "The follower setup instruction explicitly requires connecting the power supply to the follower arm controller board before configuring motors.",
          "unresolved": [
            "Exact voltage/current, connector, polarity, fuse, current limit, grounding, USB/backfeed behavior and controller-board protection are not published for the selected BOM row.",
            "RCI has not applied power or measured the controller input."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "so101-power-servo-chain-through-controller",
          "robotRecordId": "bom-audit-so101-follower",
          "fromNodeId": "so101-follower-external-power",
          "toNodeId": "so101-follower-six-servo-chain",
          "relationType": "power",
          "interfaceLabel": "Controller-board-fed follower servo power surface; exact rail path unpublished",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "huggingface/lerobot commit d23b65416ff1042a7268eea6e3671d18ec37d29d plus TheRobotStudio/SO-ARM100 commit 7629d2ad9853d10fb903093a33ef6114099d97e5",
          "sourceUrl": "https://github.com/huggingface/lerobot/blob/d23b65416ff1042a7268eea6e3671d18ec37d29d/docs/source/so101.mdx",
          "sourceBomItemIds": [
            "so101-follower-power-supply",
            "so101-follower-motor-control-board",
            "so101-follower-sts3215-c001"
          ],
          "evidenceText": "The setup sequence powers the controller board while connecting one motor at a time through the three-pin link, then directs the operator to daisy-chain all six motors for use. This supports a controller-fed servo power surface but not an exact internal power schematic.",
          "unresolved": [
            "Rail voltage at each motor, current distribution, wire gauge, connector rating, voltage drop, stall margin, thermal behavior and optional 12 V-variant separation are not physically verified.",
            "RCI has not instrumented any servo supply rail."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-berkeley-humanoid-lite",
      "platform": "Berkeley Humanoid Lite",
      "responsibilityParty": "Hybrid Robotics / UC Berkeley",
      "morphology": "humanoid",
      "platformRevisionBoundary": "Platform release v1.1.0 is selected for lifecycle context; the live Google Sheet is audited separately because it is not embedded in or frozen by that release.",
      "selectedBomSurface": "Public Google Sheet tabs: Humanoid, M6C12 Actuator and 5010 Actuator",
      "bomFormat": "google-sheet",
      "declaredEntryCount": 52,
      "entryCountBoundary": "Twenty-six Humanoid rows, thirteen M6C12 rows and thirteen 5010 rows after excluding headings and totals. Four rows are generic Misc aggregates; formulas and alternative items remain part of the live-sheet boundary.",
      "commitAddressableBom": false,
      "nativeTabularBom": true,
      "versionState": "The sheet is a live public document with no immutable release identifier exposed in the selected surface; repository release v1.1.0 and the live BOM therefore remain separate evidence boundaries.",
      "lifecycleBoundary": "Release v1.1.0 records missing-BOM-part fixes and the project announces V2 exploration; the selected sheet also contains an alternative IMU row outside its totals.",
      "strongestPublishedEvidence": "All 52 selected rows publish quantities; 42 provide both US and China procurement links, with regional price formulas and separate actuator/humanoid tabs.",
      "largestRebuildGap": "No immutable sheet snapshot binds the live BOM to release v1.1.0, and generic Misc rows prevent a fully flattened procurement boundary.",
      "responsibilitySourceConflict": false,
      "conflictNote": "The paper’s historical high-level cost table and the current live-sheet totals have different dates and are retained as version drift, not asserted as an internal conflict.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "partial",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "editorialBoundary": "A live spreadsheet can be procurement-useful while remaining a weak citation target: values, links and formulas may change without an immutable public revision tied to the robot release.",
      "sources": [
        {
          "id": "berkeley-bom-doc",
          "title": "Berkeley Humanoid Lite materials and parts BOM",
          "url": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/materials-and-parts-bom",
          "location": "Official documentation page linking the public BOM sheet"
        },
        {
          "id": "berkeley-bom-sheet",
          "title": "Berkeley Humanoid Lite public BOM spreadsheet",
          "url": "https://docs.google.com/spreadsheets/d/1AQEHcH_nPkXYfor2-h7bwNIUMmsePtAm53epnsWgZXc/edit?usp=sharing",
          "location": "Humanoid, M6C12 Actuator and 5010 Actuator line items, quantities, regional links and formulas",
          "revision": "Live sheet verified 2026-08-10; no immutable public revision selected"
        },
        {
          "id": "berkeley-release-v110",
          "title": "Berkeley Humanoid Lite v1.1.0 release",
          "url": "https://github.com/HybridRobotics/Berkeley-Humanoid-Lite/releases/tag/v1.1.0",
          "location": "Release boundary, missing-BOM-part fixes and V2 exploration note",
          "revision": "Tag v1.1.0 · commit aa93e47 · 2025-09-07"
        },
        {
          "id": "berkeley-repository",
          "title": "Berkeley Humanoid Lite repository",
          "url": "https://github.com/HybridRobotics/Berkeley-Humanoid-Lite",
          "location": "CAD, PCB, software and split code/asset license statements"
        }
      ],
      "completeRebuildEvidencePackage": false,
      "verifiedDate": "2026-08-10",
      "slug": "berkeley-humanoid-lite",
      "href": "/robots/berkeley-humanoid-lite/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 4,
      "partialDisclosureCount": 6,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 58,
      "sourceCount": 4,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "berkeley-humanoid-lite-humanoid-mini-pc",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Mini PC",
          "itemClass": "compute",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "On-robot or system compute",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Processor, memory, storage, enclosure and exact orderable model are not published in the item label.",
            "The live sheet is not an immutable release-bound snapshot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-lipo-6s",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "LiPo battery 6S",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "6S",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "Primary mobile power source",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Capacity, discharge rating, connector, protection and exact pack model are not published in the item label.",
            "The live sheet is not an immutable release-bound snapshot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-usb-can",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "USB-CAN adapter",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Host-to-actuator CAN interface",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "CAN transceiver, connector, firmware and exact hardware revision are not published in the item label."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-usb-hub",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "USB hub",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "USB interface expansion",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Port count, power mode, bandwidth and exact model are not published in the item label."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-bno085",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "BNO085",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "BNO085",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "Primary published inertial-sensing option",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Breakout-board vendor, board revision, interface mode and calibration state are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-im10a-alternative",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "IM10A",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "IM10A",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One IM10A is published as an alternative to the BNO085; it must not be counted as simultaneously installed without an as-built selection.",
          "role": "Alternative inertial-sensing option",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live sheet does not bind BNO085 versus IM10A to one released or as-built configuration."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-extrusion-250",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Aluminum extrusion 250 mm",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "250 mm",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Base/frame structure",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-extrusion-200",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Aluminum extrusion 200 mm",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "200 mm",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Base/frame structure",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-extrusion-150",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Aluminum extrusion 150 mm",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "150 mm",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Base/frame structure",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-extrusion-100",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Aluminum extrusion 100 mm",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "100 mm",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Base/frame structure",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-inner-bracket",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Aluminum inner bracket",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 24,
          "quantityState": "published-unit-count",
          "quantityBoundary": "24 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Extrusion-frame joint hardware",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-regulator-24-12",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "24V to 12V regulator",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "24 V input to 12 V output",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "Intermediate power conversion",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Current rating, efficiency, isolation, connector and exact model are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-regulator-12-5",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "12V to 5V regulator",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "12 V input to 5 V output",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "Low-voltage power conversion",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Current rating, efficiency, isolation, connector and exact model are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-voltage-monitor",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Voltage monitor",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "Power-rail voltage monitoring",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Range, accuracy, interface and exact model are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-current-monitor",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Current monitor",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "System current monitoring",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Range, shunt specification, accuracy, interface and exact model are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-circuit-breaker",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Circuit breaker",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published on the live Humanoid tab; this is not an as-built count.",
          "role": "Primary circuit protection",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Trip curve, voltage/current rating, poles and exact model are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-misc-fasteners",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Misc — Fasteners",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The live sheet publishes quantity 1 for a generic “Misc / Fasteners” row; this is one unresolved group, not evidence of one physical fastener.",
          "role": "Grouped base/frame fasteners",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Fastener types, dimensions, materials, finishes and counts are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-misc-cables-connectors",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Base",
          "name": "Misc — Cables & connectors",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The live sheet publishes quantity 1 for a generic cable-and-connector group; it is not a count of one cable.",
          "role": "Grouped base electrical interconnects",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Cable types, lengths, wire gauges, connector identities and counts are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-legs-m6c12",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Legs",
          "name": "M6C12 actuators",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M6C12 actuator",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Leg-joint actuation",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live sheet does not bind eight physical actuator serials or revisions to one robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-legs-5010",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Legs",
          "name": "5010 actuators",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "5010 actuator",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Leg-joint actuation",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live sheet does not bind four physical actuator serials or revisions to one robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-legs-filament",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Legs",
          "name": "3D print filament",
          "itemClass": "material",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The live sheet publishes quantity 1 without a mass, spool-size or print-yield boundary.",
          "role": "Leg structural print material",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Material type, mass, color, print parameters and per-part allocation are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-legs-6803-2rs",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Legs",
          "name": "6803-2RS",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "6803-2RS",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Leg pitch-linkage bearing",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-arms-m6c12",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Arms",
          "name": "M6C12 actuators",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M6C12 actuator",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Arm-joint actuation",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-arms-5010",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Arms",
          "name": "5010 actuators",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "5010 actuator",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "Arm-joint actuation",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-servo-claw",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Arms",
          "name": "Servo motor claw",
          "itemClass": "actuation",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published on the live Humanoid tab; this is not an as-built count.",
          "role": "End-effector actuation",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Servo model, torque, voltage, interface and claw mechanism are not published in the item label."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-humanoid-arms-filament",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "Humanoid / Arms",
          "name": "3D print filament",
          "itemClass": "material",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The live sheet publishes quantity 1 without a mass, spool-size or print-yield boundary.",
          "role": "Arm structural print material",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Material type, mass, color, print parameters and per-part allocation are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-mr106",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Bearing",
          "name": "MR106-2RS",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "MR106-2RS",
          "variant": null,
          "quantity": 13,
          "quantityState": "published-unit-count",
          "quantityBoundary": "13 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Bearing between input shaft and cycloidal disk, and between input shaft and output shaft",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-6701",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Bearing",
          "name": "6701-2RS",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "6701-2RS",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Bearing between cycloidal disk and output shaft",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-6811",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Bearing",
          "name": "6811ZZ",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "6811ZZ",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Bearing between output shaft and housing",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-m3-55",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Fastener",
          "name": "M3 x 55 mm",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3 x 55 mm",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Mounting housing",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-m3-30",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Fastener",
          "name": "M3 x 30 mm",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3 x 30 mm",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Mounting output shaft",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-m2-insert",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Fastener",
          "name": "M2 x 3 x 3.5 mm",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M2 x 3 x 3.5 mm",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "M2 threaded insert for mounting encoder",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-m3-insert",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Fastener",
          "name": "M3 x 4 x 5 mm insert",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3 x 4 x 5 mm insert",
          "variant": null,
          "quantity": 24,
          "quantityState": "published-unit-count",
          "quantityBoundary": "24 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "M3 threaded insert",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-m4-hex-stand",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Fastener",
          "name": "M4 x 15 mm hex stand",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M4 x 15 mm hex stand",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Input shaft stiffener",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-motor",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Motor",
          "name": "MAD Components M6C12 150KV",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "MAD Components",
          "modelOrFile": "MAD Components M6C12 150KV",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Actuator motor",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-pla",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Structural",
          "name": "PLA",
          "itemClass": "material",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PLA",
          "variant": null,
          "quantity": 0.12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0.12 units published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "3D print filament, kg",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-esc",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Electrical",
          "name": "B-G431B-ESC1",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "B-G431B-ESC1",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Motor controller",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-as5600",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Electrical",
          "name": "AS5600",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "AS5600",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "I2C position encoder",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-misc-cables",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "M6C12 Actuator / Electrical",
          "name": "Misc — Cables & connectors",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one M6C12 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Grouped actuator electrical interconnects",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Cable types, lengths, wire gauges, connector identities and counts are not published."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-mr106",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Bearing",
          "name": "MR106-2RS",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "MR106-2RS",
          "variant": null,
          "quantity": 13,
          "quantityState": "published-unit-count",
          "quantityBoundary": "13 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Bearing between input shaft and cycloidal disk, and between input shaft and output shaft",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-6701",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Bearing",
          "name": "6701-2RS",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "6701-2RS",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Bearing between cycloidal disk and output shaft",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-6809",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Bearing",
          "name": "6809ZZ",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "6809ZZ",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Bearing between output shaft and housing",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-m3-55",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Fastener",
          "name": "M3 x 55 mm",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3 x 55 mm",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Mounting housing",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-m3-25",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Fastener",
          "name": "M3 x 25 mm",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3 x 25 mm",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Mounting output shaft",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-m2-insert",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Fastener",
          "name": "M2 x 3 x 3.5 mm",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M2 x 3 x 3.5 mm",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "M2 threaded insert for mounting encoder",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-m3-insert",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Fastener",
          "name": "M3 x 4 x 5 mm insert",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3 x 4 x 5 mm insert",
          "variant": null,
          "quantity": 24,
          "quantityState": "published-unit-count",
          "quantityBoundary": "24 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "M3 threaded insert",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-m4-hex-stand",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Fastener",
          "name": "M4 x 12 mm hex stand",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M4 x 12 mm hex stand",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Input shaft stiffener",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-motor",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Motor",
          "name": "MAD Components 5010 110KV",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "MAD Components",
          "modelOrFile": "MAD Components 5010 110KV",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Actuator motor",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-pla",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Structural",
          "name": "PLA",
          "itemClass": "material",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PLA",
          "variant": null,
          "quantity": 0.1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0.1 units published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "3D print filament, kg",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-esc",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Electrical",
          "name": "B-G431B-ESC1",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "B-G431B-ESC1",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Motor controller",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-as5600",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Electrical",
          "name": "AS5600",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "AS5600",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "I2C position encoder",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The live Google Sheet is mutable and is not an immutable BOM snapshot tied to Berkeley Humanoid Lite v1.1.0.",
            "No unit-level as-built manifest confirms this exact item, supplier or revision on one physical robot."
          ]
        },
        {
          "id": "berkeley-humanoid-lite-5010-misc-cables",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "sourceId": "berkeley-humanoid-lite-live-bom",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13; not bound to Berkeley Humanoid Lite release v1.1.0",
          "sourceSection": "5010 Actuator / Electrical",
          "name": "Misc — Cables & connectors",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published for one 5010 actuator module; RCI does not silently multiply it by the whole-robot actuator count.",
          "role": "Grouped actuator electrical interconnects",
          "procurementBoundary": "The official live sheet contains regional retailer links and prices. RCI preserves the responsibility-party item identity, role and quantity boundary but does not republish volatile price or retailer content.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Cable types, lengths, wire gauges, connector identities and counts are not published."
          ]
        }
      ],
      "normalizedBomItemCount": 52,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "berkeley-live-sheet-release-separation",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "relationType": "revision-separation",
          "from": "Berkeley Humanoid Lite release v1.1.0",
          "to": "Mutable public Google Sheet observed 2026-08-13",
          "effectiveBoundary": "No immutable public sheet revision is selected or cryptographically bound to release v1.1.0.",
          "systemImpact": "Procurement rows, links, formulas and alternatives can change without changing the release tag.",
          "evidenceState": "rci-source-boundary",
          "sourceId": "berkeley-bom-sheet",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13",
          "unresolved": "A release-specific BOM snapshot remains unavailable."
        },
        {
          "id": "berkeley-us-china-procurement-boundary",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "relationType": "regional-procurement-boundary",
          "from": "US procurement-link column",
          "to": "China procurement-link column",
          "effectiveBoundary": "The live sheet publishes regional link columns, but RCI does not republish volatile retailer URLs or prices.",
          "systemImpact": "Regional procurement routes do not establish equivalent model, current stock, landed cost or substitution safety.",
          "evidenceState": "rci-source-boundary",
          "sourceId": "berkeley-bom-sheet",
          "sourceRevision": "Live official Google Sheet observed 2026-08-13",
          "unresolved": "No normalized regional availability, lead-time or single-source-risk evidence is published."
        }
      ],
      "topologyNodes": [
        {
          "id": "berkeley-humanoid-lite-onboard-mini-pc",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "On-board BeeLink N95-class NUC / live-BOM Mini PC boundary",
          "nodeKind": "compute",
          "configurationBoundary": "The current software guide identifies a BeeLink N95 NUC running Ubuntu 22.04, while the mutable live BOM row remains generic “Mini PC”.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-mini-pc"
          ],
          "identityBoundary": "Exact order code, CPU SKU, memory, storage, PCB revision, serial, operating-system image, kernel and installed dependency hashes are not frozen or bound to release v1.1.0."
        },
        {
          "id": "berkeley-humanoid-lite-two-usb-hubs",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "Two generic USB expansion hubs",
          "nodeKind": "control",
          "configurationBoundary": "The live Humanoid BOM publishes two USB hubs used to expand the on-board host interface surface.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-usb-hub"
          ],
          "identityBoundary": "Hub models, port counts, upstream/downstream assignment, power mode, bandwidth, transaction-translation behavior, cable identities and installed topology are not frozen."
        },
        {
          "id": "berkeley-humanoid-lite-four-usb-can-adapters",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "Four generic USB-CAN adapters / can0–can3 transport boundary",
          "nodeKind": "control",
          "configurationBoundary": "The live BOM publishes four USB-CAN adapters and the current on-board guide expects four Linux CAN ports for the two arms and two legs.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-usb-can"
          ],
          "identityBoundary": "Adapter model, transceiver, USB descriptor, firmware, serial-to-port mapping, termination, exact cable routing and physical can0–can3 assignment are not frozen."
        },
        {
          "id": "berkeley-humanoid-lite-m6c12-actuator-bank",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "Ten M6C12 actuator positions with B-G431B-ESC1 and AS5600 module boundary",
          "nodeKind": "actuation",
          "configurationBoundary": "The live Humanoid tab publishes eight leg and two arm M6C12 actuators; the actuator tab separately publishes one motor controller and encoder per module without an RCI whole-robot multiplication claim.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-legs-m6c12",
            "berkeley-humanoid-lite-humanoid-arms-m6c12",
            "berkeley-humanoid-lite-m6c12-esc",
            "berkeley-humanoid-lite-m6c12-as5600"
          ],
          "identityBoundary": "Ten serialised modules, motor/ESC/encoder revisions, CAN IDs, calibration offsets, firmware hashes, phase order, gearbox condition and installed joint mapping are not bound to one robot."
        },
        {
          "id": "berkeley-humanoid-lite-5010-actuator-bank",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "Twelve 5010 actuator positions with B-G431B-ESC1 and AS5600 module boundary",
          "nodeKind": "actuation",
          "configurationBoundary": "The live Humanoid tab publishes four leg and eight arm 5010 actuators; the actuator tab separately publishes one controller and encoder per module without silently multiplying the subassembly BOM.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-legs-5010",
            "berkeley-humanoid-lite-humanoid-arms-5010",
            "berkeley-humanoid-lite-5010-esc",
            "berkeley-humanoid-lite-5010-as5600"
          ],
          "identityBoundary": "Twelve serialised modules, motor/ESC/encoder revisions, CAN IDs, calibration offsets, firmware hashes, phase order, gearbox condition and installed joint mapping are not bound to one robot."
        },
        {
          "id": "berkeley-humanoid-lite-original-bno085-arduino-imu",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "Original BNO085 plus Arduino Nano-to-host IMU path",
          "nodeKind": "perception",
          "configurationBoundary": "The current robot-building guide describes the original BNO085 path through an Arduino Nano to the computer.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-bno085"
          ],
          "identityBoundary": "Arduino board identity is not preserved as a selected live-BOM row; breakout revision, I²C wiring, firmware, USB serial settings, calibration and physical installation are not frozen."
        },
        {
          "id": "berkeley-humanoid-lite-alternative-im10a-usb-imu",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "Recommended alternative IM10A direct-USB IMU path",
          "nodeKind": "perception",
          "configurationBoundary": "The current guide recommends IM10A because it connects directly over USB; the live BOM marks it as an alternative rather than a simultaneous second IMU.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-im10a-alternative"
          ],
          "identityBoundary": "Vendor subvariant, firmware, USB descriptor, cable, sample rate, coordinate frame, calibration, serial and installed selection are not frozen."
        },
        {
          "id": "berkeley-humanoid-lite-6s-protected-main-bus",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "6S LiPo, circuit-breaker and main actuator power-bus boundary",
          "nodeKind": "power",
          "configurationBoundary": "The live BOM publishes one generic 6S LiPo and one circuit breaker; the wiring guide describes a thick main power bus with XT60 trunk and XT30 actuator branches.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-lipo-6s",
            "berkeley-humanoid-lite-humanoid-circuit-breaker",
            "berkeley-humanoid-lite-humanoid-misc-cables-connectors"
          ],
          "identityBoundary": "Pack model/capacity/discharge rating, state of charge, breaker rating/curve, fuse strategy, connector part numbers, polarity, bus gauge/length, grounding and measured fault behavior are not frozen."
        },
        {
          "id": "berkeley-humanoid-lite-conversion-monitoring-rails",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "label": "24→12 V and 12→5 V conversion plus voltage/current monitoring boundary",
          "nodeKind": "power",
          "configurationBoundary": "The live BOM publishes one converter at each named voltage transition and one voltage and current monitor; the current wiring diagram places low-voltage electronics on the robot power architecture.",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-regulator-24-12",
            "berkeley-humanoid-lite-humanoid-regulator-12-5",
            "berkeley-humanoid-lite-humanoid-voltage-monitor",
            "berkeley-humanoid-lite-humanoid-current-monitor"
          ],
          "identityBoundary": "Converter and monitor models, ratings, efficiency, isolation, shunt placement, rail allocation, protection, thermal margin and measured output are not frozen; “24 V” must not be read as a measured 6S pack voltage."
        }
      ],
      "interfaceRelations": [
        {
          "id": "berkeley-onboard-pc-two-usb-hubs",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-onboard-mini-pc",
          "toNodeId": "berkeley-humanoid-lite-two-usb-hubs",
          "relationType": "data-control",
          "interfaceLabel": "On-board USB expansion surface; exact upstream/downstream topology unpublished",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-software/the-on-board-computer",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-mini-pc",
            "berkeley-humanoid-lite-humanoid-usb-hub"
          ],
          "evidenceText": "The live Humanoid BOM publishes one Mini PC and two USB hubs, while the on-board guide uses the NUC as the Linux host for the robot USB-CAN and IMU paths.",
          "unresolved": [
            "The official text does not publish which host ports feed which hubs, whether either hub is powered, cable identities, device bandwidth allocation or a unit-level USB tree.",
            "RCI has not enumerated the USB topology."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-usb-hubs-four-usb-can",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-two-usb-hubs",
          "toNodeId": "berkeley-humanoid-lite-four-usb-can-adapters",
          "relationType": "data-control",
          "interfaceLabel": "Four USB-CAN device paths exposed as can0–can3; hub allocation unpublished",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-software/the-on-board-computer",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-usb-hub",
            "berkeley-humanoid-lite-humanoid-usb-can"
          ],
          "evidenceText": "The live BOM publishes two hubs and four USB-CAN adapters; the on-board guide says two arms and two legs connected together appear as can0, can1, can2 and can3.",
          "unresolved": [
            "Hub-to-adapter pairing, persistent Linux names, USB serials, adapter firmware, termination and exact limb-to-port mapping are not frozen.",
            "RCI has not observed can0–can3 or captured any frame."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-usb-can-m6c12-bank",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-four-usb-can-adapters",
          "toNodeId": "berkeley-humanoid-lite-m6c12-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "1 Mbit/s CAN control/feedback to M6C12 module positions",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-software/the-on-board-computer",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-usb-can",
            "berkeley-humanoid-lite-humanoid-legs-m6c12",
            "berkeley-humanoid-lite-humanoid-arms-m6c12",
            "berkeley-humanoid-lite-m6c12-esc"
          ],
          "evidenceText": "The official setup initializes SocketCAN at 1,000,000 bit/s and addresses actuator IDs through USB-CAN; the live BOM publishes the M6C12 positions and the per-module B-G431B-ESC1 controller.",
          "unresolved": [
            "Per-limb bus membership, node IDs, termination, harness length, bus load, firmware/configuration hashes, watchdog state, calibration and error-frame history are not frozen.",
            "RCI has not pinged, commanded or measured an M6C12 module."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-usb-can-5010-bank",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-four-usb-can-adapters",
          "toNodeId": "berkeley-humanoid-lite-5010-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "1 Mbit/s CAN control/feedback to 5010 module positions",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-software/the-on-board-computer",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-usb-can",
            "berkeley-humanoid-lite-humanoid-legs-5010",
            "berkeley-humanoid-lite-humanoid-arms-5010",
            "berkeley-humanoid-lite-5010-esc"
          ],
          "evidenceText": "The official setup initializes SocketCAN at 1,000,000 bit/s and addresses actuator IDs through USB-CAN; the live BOM publishes the 5010 positions and the per-module B-G431B-ESC1 controller.",
          "unresolved": [
            "Per-limb bus membership, node IDs, termination, harness length, bus load, firmware/configuration hashes, watchdog state, calibration and error-frame history are not frozen.",
            "RCI has not pinged, commanded or measured a 5010 module."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-onboard-pc-original-bno085-arduino",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-onboard-mini-pc",
          "toNodeId": "berkeley-humanoid-lite-original-bno085-arduino-imu",
          "relationType": "data-control",
          "interfaceLabel": "Original BNO085 → Arduino Nano → host path",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/building-the-robot",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-mini-pc",
            "berkeley-humanoid-lite-humanoid-bno085"
          ],
          "evidenceText": "The current robot-building guide explicitly describes the original IMU path as an Arduino Nano connecting the IMU to the computer.",
          "unresolved": [
            "Arduino SKU and firmware, BNO085 breakout, signal pinout, USB cable, serial protocol, sample rate, coordinate frame, calibration and timestamp behavior are not frozen.",
            "This original path must not be counted together with the recommended IM10A alternative absent one as-built selection."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-onboard-pc-alternative-im10a-usb",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-onboard-mini-pc",
          "toNodeId": "berkeley-humanoid-lite-alternative-im10a-usb-imu",
          "relationType": "data-control",
          "interfaceLabel": "Recommended alternative IM10A direct USB path",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/building-the-robot",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-mini-pc",
            "berkeley-humanoid-lite-humanoid-im10a-alternative"
          ],
          "evidenceText": "The current guide recommends IM10A because it supports direct USB connection and the live BOM labels it as the alternative IMU option.",
          "unresolved": [
            "Exact IM10A subvariant, firmware, cable, USB descriptor, sample rate, coordinate frame, calibration and timestamp behavior are not frozen.",
            "This alternative must not be represented as simultaneously installed with the original BNO085/Arduino path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-main-bus-m6c12-power",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-6s-protected-main-bus",
          "toNodeId": "berkeley-humanoid-lite-m6c12-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "XT60 main trunk with XT30 actuator branches",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/building-the-robot",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-lipo-6s",
            "berkeley-humanoid-lite-humanoid-circuit-breaker",
            "berkeley-humanoid-lite-humanoid-legs-m6c12",
            "berkeley-humanoid-lite-humanoid-arms-m6c12"
          ],
          "evidenceText": "The official robot wiring guide describes an XT60 main power bus with XT30 branches to each actuator.",
          "unresolved": [
            "Pack voltage under load, connector count/rating, branch lengths, current sharing, breaker behavior, inrush, ground return, voltage drop, thermal rise and simultaneous-load margin are not published or measured.",
            "RCI has not energized an M6C12 power branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-main-bus-5010-power",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-6s-protected-main-bus",
          "toNodeId": "berkeley-humanoid-lite-5010-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "XT60 main trunk with XT30 actuator branches",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/building-the-robot",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-lipo-6s",
            "berkeley-humanoid-lite-humanoid-circuit-breaker",
            "berkeley-humanoid-lite-humanoid-legs-5010",
            "berkeley-humanoid-lite-humanoid-arms-5010"
          ],
          "evidenceText": "The official robot wiring guide describes an XT60 main power bus with XT30 branches to each actuator.",
          "unresolved": [
            "Pack voltage under load, connector count/rating, branch lengths, current sharing, breaker behavior, inrush, ground return, voltage drop, thermal rise and simultaneous-load margin are not published or measured.",
            "RCI has not energized a 5010 power branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-main-bus-conversion-monitoring",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-6s-protected-main-bus",
          "toNodeId": "berkeley-humanoid-lite-conversion-monitoring-rails",
          "relationType": "power",
          "interfaceLabel": "Protected source to named 24→12 V / 12→5 V conversion and monitoring surface",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/building-the-robot",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-lipo-6s",
            "berkeley-humanoid-lite-humanoid-circuit-breaker",
            "berkeley-humanoid-lite-humanoid-regulator-24-12",
            "berkeley-humanoid-lite-humanoid-regulator-12-5",
            "berkeley-humanoid-lite-humanoid-voltage-monitor",
            "berkeley-humanoid-lite-humanoid-current-monitor"
          ],
          "evidenceText": "The live BOM publishes the battery, breaker, two named conversion stages and monitors, while the official wiring diagram places them on the robot power architecture.",
          "unresolved": [
            "The documentation does not publish exact converter endpoints, shunt location, rail sequence, connector pinout, grounding, protection coordination or measured voltage/current.",
            "A generic “24 V” converter label is not a measurement of the 6S battery, and RCI has not applied power."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "berkeley-conversion-rails-onboard-pc",
          "robotRecordId": "bom-audit-berkeley-humanoid-lite",
          "fromNodeId": "berkeley-humanoid-lite-conversion-monitoring-rails",
          "toNodeId": "berkeley-humanoid-lite-onboard-mini-pc",
          "relationType": "power",
          "interfaceLabel": "Low-voltage compute-power path; exact rail and connector unpublished",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Berkeley Humanoid Lite official GitBook observed 2026-08-13; live documentation and live BOM are not cryptographically bound to release v1.1.0",
          "sourceUrl": "https://berkeley-humanoid-lite.gitbook.io/docs/getting-started-with-hardware/building-the-robot",
          "sourceBomItemIds": [
            "berkeley-humanoid-lite-humanoid-regulator-24-12",
            "berkeley-humanoid-lite-humanoid-regulator-12-5",
            "berkeley-humanoid-lite-humanoid-mini-pc"
          ],
          "evidenceText": "The official wiring diagram and live BOM place the on-board Mini PC on the robot low-voltage power architecture containing the named 24-to-12 and 12-to-5 conversion rows.",
          "unresolved": [
            "The selected text does not state whether the Mini PC is fed from 12 V or 5 V, nor its connector, current requirement, grounding, startup order, brownout margin or observed load.",
            "RCI has not measured or powered the host rail."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-turtlebot3-burger",
      "platform": "TurtleBot3 Burger",
      "responsibilityParty": "ROBOTIS",
      "morphology": "mobile-base",
      "platformRevisionBoundary": "Burger parts-list column at the selected e-Manual commit; Raspberry Pi and LDS generation footnotes are preserved rather than collapsed into one implied as-built revision.",
      "selectedBomSurface": "ROBOTIS e-Manual TurtleBot3 parts-list table",
      "bomFormat": "markdown-table",
      "declaredEntryCount": 46,
      "entryCountBoundary": "Forty-six published table rows across Burger and Waffle Pi columns. Count is the shared publication surface, not 46 Burger-only unique purchased parts.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The e-Manual source file is commit-addressable but the parts table is not a release-tagged, unit-specific BOM snapshot.",
      "lifecycleBoundary": "The official footnotes record Raspberry Pi 3 B+ to Pi 4 B and LDS-01 to LDS-02 transitions, plus Waffle discontinuation after Intel Joule end-of-life.",
      "strongestPublishedEvidence": "A quantified parts table with official CAD/OpenCR links and explicit historical substitution and end-of-life footnotes.",
      "largestRebuildGap": "The current specifications name Pi 4 and LDS-02 while the parts row remains generic or alternative; no exact unit manifest fixes those selections.",
      "responsibilitySourceConflict": false,
      "conflictNote": "The generic parts row and dated revision footnotes are treated as an unresolved revision boundary, not a numerical source conflict.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "partial",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "editorialBoundary": "A current product name does not freeze the historical Pi, LDS, cable and board combination shipped in a particular unit; the exact build boundary must be recorded separately.",
      "sources": [
        {
          "id": "turtlebot3-features",
          "title": "TurtleBot3 features and parts list",
          "url": "https://emanual.robotis.com/docs/en/platform/turtlebot3/features/",
          "location": "Rendered official specifications, parts table, revision footnotes and linked hardware resources"
        },
        {
          "id": "turtlebot3-features-source",
          "title": "TurtleBot3 parts-list source file",
          "url": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "location": "Commit-pinned table and historical hardware footnotes",
          "revision": "Commit ee86bc9 · 2024-12-20"
        },
        {
          "id": "robotis-emanual-repository",
          "title": "ROBOTIS e-Manual repository",
          "url": "https://github.com/ROBOTIS-GIT/emanual",
          "location": "Documentation source and MIT repository license metadata"
        }
      ],
      "completeRebuildEvidencePackage": false,
      "verifiedDate": "2026-08-10",
      "slug": "turtlebot3-burger",
      "href": "/robots/turtlebot3-burger/",
      "morphologyLabel": "Mobile base",
      "publishedDisclosureCount": 4,
      "partialDisclosureCount": 6,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 58,
      "sourceCount": 3,
      "profileStage": "public-bom-audited",
      "manufacturerLink": {
        "name": "ROBOTIS manufacturer profile",
        "href": "/manufacturer/robotis/"
      },
      "normalizedBomItems": [
        {
          "id": "turtlebot3-burger-waffle-plate",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Waffle Plate",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Waffle Plate",
          "variant": "Burger selected · Burger column 8 · Waffle Pi column 24",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published in the Burger column and 24 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Layered chassis plate",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-plate-support-m3x35",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Plate Support M3x35mm",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Plate Support M3x35mm",
          "variant": "Burger selected · Burger column 4 · Waffle Pi column 12",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 12 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis plate spacing and support",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-plate-support-m3x45",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Plate Support M3x45mm",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Plate Support M3x45mm",
          "variant": "Burger selected · Burger column 10 · Waffle Pi column 10",
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 published in the Burger column and 10 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis plate spacing and support",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-pcb-support",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "PCB Support",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PCB Support",
          "variant": "Burger selected · Burger column 12 · Waffle Pi column 12",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 published in the Burger column and 12 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Electronics-board mounting",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-wheel",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Wheel",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Wheel",
          "variant": "Burger selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Differential-drive wheel",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-tire",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Tire",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Tire",
          "variant": "Burger selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Wheel traction surface",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ball-caster",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Ball Caster",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Ball Caster",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 2",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Passive chassis support",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-camera-bracket",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Camera Bracket",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Camera Bracket",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi camera mounting",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-xl430-w250-t",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Motors",
          "name": "DYNAMIXEL XL430-W250-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL XL430-W250-T",
          "variant": "Burger selected · Burger column 2 · Waffle Pi column 0",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 0 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Burger wheel actuation",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-xm430-w210-t",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Motors",
          "name": "DYNAMIXEL XM430-W210-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL XM430-W210-T",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 2",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi wheel actuation",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-opencr10",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Boards",
          "name": "OpenCR1.0",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "OpenCR1.0",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Motor, sensor and ROS communication control board",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-raspberry-pi",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Boards",
          "name": "Raspberry Pi",
          "itemClass": "compute",
          "identityState": "generic-description",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Main single-board computer",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row remains generic. Official footnotes state Pi 3 Model B for earlier units, Pi 3 Model B+ from 2019 and Pi 4 Model B from September 2021; no unit manifest selects one."
          ]
        },
        {
          "id": "turtlebot3-burger-usb2lds",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Boards",
          "name": "USB2LDS",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "USB2LDS",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "USB interface for LDS sensor",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-bt410-set",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Remote Controllers",
          "name": "BT-410 Set (Bluetooth 4, BLE)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "BT-410 Set (Bluetooth 4, BLE)",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi Bluetooth link",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-rc100b",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Remote Controllers",
          "name": "RC-100B (Remote Controller)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "RC-100B (Remote Controller)",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi handheld controller",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-lds01-lds02",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Sensors",
          "name": "LDS-01 or LDS-02",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "LDS-01 or LDS-02",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "360-degree laser distance sensing",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row publishes an LDS-01/LDS-02 alternative. The official footnote says LDS-02 replaced LDS-01 from 2022; no unit manifest selects one sensor generation."
          ]
        },
        {
          "id": "turtlebot3-burger-raspberry-pi-camera-v21",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Sensors",
          "name": "Raspberry Pi Camera v2.1",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi Camera v2.1",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi visual sensing",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-microsd-card",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Memory",
          "name": "MicroSD Card",
          "itemClass": "storage",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "MicroSD Card",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Boot and software storage",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-raspberry-pi-power-cable",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "Raspberry Pi Power Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Raspberry Pi Power Cable",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "SBC power interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-lipo-extension-cable",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "Li-Po Battery Extension Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Li-Po Battery Extension Cable",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Battery power extension",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-dynamixel-opencr-cable",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "DYNAMIXEL to OpenCR Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DYNAMIXEL to OpenCR Cable",
          "variant": "Burger selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Actuator bus interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-usb-cable",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "USB Cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "USB Cable",
          "variant": "Burger selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "USB data / service interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-camera-cable",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "Camera Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Camera Cable",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi camera interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-smps-12v5a",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "SMPS 12V5A",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "SMPS 12V5A",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "External DC power supply",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ac-cord",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "A/C Cord",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "A/C Cord",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Mains input cord",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-lipo-battery",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "LIPO Battery 11.1V 1,800mAh",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "LIPO Battery 11.1V 1,800mAh",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Mobile energy storage",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-lipo-charger",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "LIPO Battery Charger",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "LIPO Battery Charger",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Battery charging",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-screw-driver",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Tools",
          "name": "Screw driver",
          "itemClass": "tool",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Screw driver",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Assembly tool",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-rivet-tool",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Tools",
          "name": "Rivet tool",
          "itemClass": "tool",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Rivet tool",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Assembly tool",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-m2x4-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2x4mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2x4mm_K",
          "variant": "Burger selected · Burger column 8 · Waffle Pi column 8",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published in the Burger column and 8 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-t2x6-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_T2x6mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_T2x6mm_K",
          "variant": "Burger selected · Burger column 4 · Waffle Pi column 8",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 8 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-m2x12-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2x12mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2x12mm_K",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 4",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-m25x8-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2.5x8mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2.5x8mm_K",
          "variant": "Burger selected · Burger column 16 · Waffle Pi column 16",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published in the Burger column and 16 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-m25x12-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2.5x12mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2.5x12mm_K",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 20",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 20 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-t26x12-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_T2.6x12mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_T2.6x12mm_K",
          "variant": "Burger selected · Burger column 16 · Waffle Pi column 0",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published in the Burger column and 0 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Burger chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-m25x16-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2.5x16mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2.5x16mm_K",
          "variant": "Burger selected · Burger column 4 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-ph-m3x8-k",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M3x8mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M3x8mm_K",
          "variant": "Burger selected · Burger column 44 · Waffle Pi column 140",
          "quantity": 44,
          "quantityState": "published-unit-count",
          "quantityBoundary": "44 published in the Burger column and 140 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-nut-m2",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "NUT_M2",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "NUT_M2",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 4",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi chassis nut",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-nut-m25",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "NUT_M2.5",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "NUT_M2.5",
          "variant": "Burger selected · Burger column 20 · Waffle Pi column 24",
          "quantity": 20,
          "quantityState": "published-unit-count",
          "quantityBoundary": "20 published in the Burger column and 24 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis nut",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-nut-m3",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "NUT_M3",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "NUT_M3",
          "variant": "Burger selected · Burger column 16 · Waffle Pi column 96",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published in the Burger column and 96 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis nut",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-rivet-1",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Rivet_1",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Rivet_1",
          "variant": "Burger selected · Burger column 14 · Waffle Pi column 22",
          "quantity": 14,
          "quantityState": "published-unit-count",
          "quantityBoundary": "14 published in the Burger column and 22 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis rivet",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-rivet-2",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Rivet_2",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Rivet_2",
          "variant": "Burger selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis rivet",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-spacer",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Spacer",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Spacer",
          "variant": "Burger selected · Burger column 4 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis spacing hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-silicone-spacer",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Silicone Spacer",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Silicone Spacer",
          "variant": "Burger selected · Burger column 0 · Waffle Pi column 4",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi compliant spacing hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-bracket",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Bracket",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Bracket",
          "variant": "Burger selected · Burger column 5 · Waffle Pi column 6",
          "quantity": 5,
          "quantityState": "published-unit-count",
          "quantityBoundary": "5 published in the Burger column and 6 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis mounting hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-burger-adapter-plate",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Adapter Plate",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Adapter Plate",
          "variant": "Burger selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Burger configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis adaptation hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        }
      ],
      "normalizedBomItemCount": 46,
      "manufacturerRelations": [
        {
          "manufacturerName": "ROBOTIS",
          "manufacturerSlug": "robotis",
          "href": "/manufacturer/robotis/",
          "normalizedItemCount": 7,
          "installedItemCount": 4,
          "itemIds": [
            "turtlebot3-burger-xl430-w250-t",
            "turtlebot3-burger-xm430-w210-t",
            "turtlebot3-burger-opencr10",
            "turtlebot3-burger-usb2lds",
            "turtlebot3-burger-bt410-set",
            "turtlebot3-burger-rc100b",
            "turtlebot3-burger-lds01-lds02"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        },
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 2,
          "installedItemCount": 1,
          "itemIds": [
            "turtlebot3-burger-raspberry-pi",
            "turtlebot3-burger-raspberry-pi-camera-v21"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-turtlebot3-burger-xl430-w250-t",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "robotBomItemId": "turtlebot3-burger-xl430-w250-t",
          "componentId": "cmp-robotis-xl430-w250-t",
          "componentSlug": "robotis-xl430-w250-t",
          "componentName": "ROBOTIS DYNAMIXEL XL430-W250-T",
          "componentOfficialModel": "XL430-W250-T",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "DYNAMIXEL XL430-W250-T",
          "publishedQuantity": 2,
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "identityEvidence": "The pinned TurtleBot3 Burger responsibility-party parts list publishes “DYNAMIXEL XL430-W250-T” in the Burger column with quantity 2. The RCI component catalog independently represents the exact official model XL430-W250-T from the ROBOTIS e-Manual.",
          "quantityBoundary": "Two units are published for the selected Burger configuration; the shared source row gives zero for Waffle Pi. RCI did not inspect a serialised Burger, multiply the value across kits or infer an as-shipped actuator revision.",
          "evidenceBoundary": "This crosswalk proves that one pinned responsibility-party BOM row and one exact RCI component record refer to XL430-W250-T. It does not prove installed serials, current supply, compatibility, continuous torque, allowable stall operation, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-turtlebot3-burger-opencr10",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "robotBomItemId": "turtlebot3-burger-opencr10",
          "componentId": "cmp-robotis-opencr10",
          "componentSlug": "robotis-opencr10",
          "componentName": "ROBOTIS OpenCR 1.0",
          "componentOfficialModel": "OpenCR1.0",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "OpenCR1.0",
          "publishedQuantity": 1,
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "identityEvidence": "The pinned TurtleBot3 Burger responsibility-party parts list publishes “OpenCR1.0” in the Burger column with quantity 1. The RCI component catalog independently represents that exact OpenCR1.0 board identity from the official ROBOTIS e-Manual.",
          "quantityBoundary": "One board is published for the selected Burger configuration. RCI did not inspect a serialised board, populated IMU revision, bootloader or flashed firmware image.",
          "evidenceBoundary": "This relation establishes an exact public-BOM board identity only. It does not prove the MPU9250 or ICM-20648 hardware era, firmware state, electrical compatibility, bus timing, current supply, endorsement or physical validation.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [
        {
          "id": "turtlebot3-pi3b-to-pi3bplus",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "relationType": "standard-configuration-change",
          "from": "Raspberry Pi 3 Model B",
          "to": "Raspberry Pi 3 Model B+",
          "effectiveBoundary": "Pi 3 Model B+ included as standard starting in 2019; earlier units used Pi 3 Model B.",
          "systemImpact": "Main compute identity, board I/O and software-image compatibility can differ across units sharing the TurtleBot3 model name.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "No unit serial or shipment interval is published in the selected source."
        },
        {
          "id": "turtlebot3-pi3bplus-to-pi4b",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "relationType": "standard-configuration-change",
          "from": "Raspberry Pi 3 Model B+",
          "to": "Raspberry Pi 4 Model B",
          "effectiveBoundary": "Pi 4 Model B included as standard since September 2021.",
          "systemImpact": "Compute performance, power, thermals, connectors and software-image requirements change.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "RAM capacity and exact board revision are not bound to one shipped unit."
        },
        {
          "id": "turtlebot3-lds01-to-lds02",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "relationType": "replacement",
          "from": "LDS-01",
          "to": "LDS-02",
          "effectiveBoundary": "LDS-02 replaced LDS-01 from 2022.",
          "systemImpact": "Sensor generation, cabling, driver and measurement behavior may differ across otherwise similar robots.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "The selected source does not provide a unit-level cutover serial."
        },
        {
          "id": "turtlebot3-waffle-joule-eol",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "relationType": "end-of-life-discontinuation",
          "from": "TurtleBot3 Waffle with Intel Joule 570x",
          "to": "Discontinued",
          "effectiveBoundary": "Official e-Manual states Waffle was discontinued because the Intel Joule 570x SBC reached end of life.",
          "systemImpact": "The discontinued Waffle branch must not be conflated with Burger or Waffle Pi availability.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "No PCN identifier or final-order date is published in the selected page."
        }
      ],
      "topologyNodes": [
        {
          "id": "turtlebot3-burger-opencr10",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "label": "OpenCR1.0 control board",
          "nodeKind": "control",
          "configurationBoundary": "One OpenCR1.0 in the Burger column at the selected e-Manual commit.",
          "sourceBomItemIds": [
            "turtlebot3-burger-opencr10"
          ],
          "identityBoundary": "The BOM fixes the board name but not one physical board revision, IMU population or firmware image."
        },
        {
          "id": "turtlebot3-burger-xl430-pair",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "label": "Two XL430-W250-T drive actuators",
          "nodeKind": "actuation",
          "configurationBoundary": "Two exact XL430-W250-T rows in the Burger configuration.",
          "sourceBomItemIds": [
            "turtlebot3-burger-xl430-w250-t"
          ],
          "identityBoundary": "Published model and quantity do not establish serials, firmware, allowable duty cycle or physical condition."
        }
      ],
      "interfaceRelations": [
        {
          "id": "turtlebot3-burger-opencr-xl430-cable-bus",
          "robotRecordId": "bom-audit-turtlebot3-burger",
          "fromNodeId": "turtlebot3-burger-opencr10",
          "toNodeId": "turtlebot3-burger-xl430-pair",
          "relationType": "data-control",
          "interfaceLabel": "Two published DYNAMIXEL-to-OpenCR cables; exact port and electrical mode not frozen",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceUrl": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "sourceBomItemIds": [
            "turtlebot3-burger-opencr10",
            "turtlebot3-burger-xl430-w250-t",
            "turtlebot3-burger-dynamixel-opencr-cable"
          ],
          "evidenceText": "The Burger column publishes one OpenCR1.0, two XL430-W250-T actuators and two DYNAMIXEL-to-OpenCR cables. This supports an assembly-level board-to-actuator interconnect without selecting a physical port or bus configuration.",
          "unresolved": [
            "The selected table does not freeze TTL versus RS-485 port choice, connector routing, actuator IDs, baud rate, firmware or cable revisions.",
            "RCI has not inspected or powered a TurtleBot3 Burger."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-odri-solo12",
      "platform": "ODRI Solo12",
      "responsibilityParty": "Open Dynamic Robot Initiative",
      "morphology": "quadruped",
      "platformRevisionBoundary": "Solo12 v1 base robot plus the separately published v1.1 autonomy upgrade; the two lists are not silently flattened into one implied revision.",
      "selectedBomSurface": "quadruped_robot_12dof_v1 top-level BOM plus quadruped_robot_12dof_v1.1 upgrade BOM",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 45,
      "entryCountBoundary": "Twenty-seven v1 top-level rows plus eighteen v1.1 upgrade rows. The base list contains nested assemblies such as 3DOF Leg ×4, so 45 is not a unique-part or fully flattened quantity.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "Versioned hardware folders and commit-pinned source files provide a stable selected snapshot; nested subassembly BOMs remain distributed across the repository.",
      "lifecycleBoundary": "The repository publishes an explicit v1 base and v1.1 autonomy upgrade boundary; its latest selected repository activity is from 2022.",
      "strongestPublishedEvidence": "Versioned mechanical boundaries, quantified top-level lists, custom STL/SolidWorks files, Eagle schematics/boards/Gerbers, wiring and calibration material under BSD-3-Clause.",
      "largestRebuildGap": "No single fully flattened BOM joins every nested leg, actuator, board and v1.1 upgrade item, and no unit-level as-built manifest is published.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this record.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "published",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "editorialBoundary": "Versioned folders and rich production files are stronger than a live list, but a nested repository still requires a controlled flattening step before procurement or replication.",
      "sources": [
        {
          "id": "solo12-v1-bom",
          "title": "Solo12 v1 top-level BOM",
          "url": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware/blob/66af1522b4fba0ec4a1d7790e66f5e4652208d30/mechanics/quadruped_robot_12dof_v1/README.md",
          "location": "Base robot BOM, nested assemblies and custom mechanical files",
          "revision": "Repository snapshot 66af152 · file material revision 7ace859"
        },
        {
          "id": "solo12-v11-bom",
          "title": "Solo12 v1.1 autonomy upgrade BOM",
          "url": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware/blob/66af1522b4fba0ec4a1d7790e66f5e4652208d30/mechanics/quadruped_robot_12dof_v1.1/README.md",
          "location": "Autonomy upgrade parts and printed files",
          "revision": "Commit 66af152 · 2022-09-06"
        },
        {
          "id": "odri-hardware-repository",
          "title": "Open Robot Actuator Hardware repository",
          "url": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware",
          "location": "Nested mechanical/electrical production files, wiring, calibration and BSD-3-Clause license"
        }
      ],
      "completeRebuildEvidencePackage": false,
      "verifiedDate": "2026-08-10",
      "slug": "odri-solo12",
      "href": "/robots/odri-solo12/",
      "morphologyLabel": "Quadruped",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 3,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "solo12-v1-3dof-leg",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "3DOF Leg",
          "itemClass": "subassembly",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published at the v1 base robot top level. This is a nested assembly count, not a flattened unique-part count.",
          "role": "Four repeated three-degree-of-freedom leg assemblies",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Each of four legs is a nested assembly documented on a separate page; this top-level record is intentionally not flattened into motors, bearings, electronics and fasteners.",
            "No unit-level as-built manifest confirms the nested assembly revisions."
          ]
        },
        {
          "id": "solo12-v1-master-board-v2",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Master Board v2",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Robot-level communication and control board",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-micro-driver-board-v2",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Micro Driver Board v2",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Distributed motor-driver electronics",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-imu",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Inertia Measurement Unit",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "LORD MicroStrain",
          "modelOrFile": "3DM-CX5-25",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Base inertial sensing",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-back",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Back",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Back",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Rear body structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-bottom",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Bottom",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Bottom",
          "variant": "v1 base robot",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Lower body structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-center",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Center",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Center",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Center body plate option",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-center-handle",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Center Handle",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Center Handle",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Center plate with handle option",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-center-vicon",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Center Vicon",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Center Vicon",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Center plate with motion-capture attachment option",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-front",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Front",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Front",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Front body structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-hip-aa-support",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Hip AA Support",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Hip AA Support",
          "variant": "v1 base robot",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Hip abduction/adduction support",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-side",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Side",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Side",
          "variant": "v1 base robot",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Side body structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-top-imu",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Top IMU",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Top IMU",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "IMU top mounting structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-body-top-master-board",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Body Structure Top Master Board",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Top Master Board",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Master-board top mounting structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-led-cover",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Led Cover",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Led Cover",
          "variant": "v1 base robot",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Status-light cover",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-hip-adapter",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Hip Adapter",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Hip Adapter",
          "variant": "v1 base robot",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Hip orientation adapter",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-micro-driver-spacer",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Spacer Micro Driver Stack",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Spacer Micro Driver Stack",
          "variant": "v1 base robot",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Micro-driver stack spacing",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-hip-bearing",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Hip AA Bearing 25mm x 20mm x 4mm ET2520 2Z VA",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "ET2520 2Z VA",
          "variant": "v1 base robot",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Hip abduction/adduction bearing",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-fastener-body-side",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M3x12 Socket Head Cap Screw",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Body-side fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-fastener-body-center",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M3x8 Socket Head Cap Screw",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Body-center fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-fastener-hip-actuator",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M2.5x10 Socket Head Cap Screw",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Hip actuator-module fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-fastener-hip-support",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M3x14 Socket Head Cap Screw",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Hip-support fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-fastener-driver-stack",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M2.5x25 Socket Head Cap Screw",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Micro-driver stack fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-fastener-imu",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M2.5x16 Slotted Screw / Conrad 839940-62",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "IMU fastening; source instructs shortening to 13 mm",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-helicoil",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Helicoil M3 x 4.5mm",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 32,
          "quantityState": "published-unit-count",
          "quantityBoundary": "32 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Thread insert",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-vicon-marker",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "Vicon Markers Ø 9.5mm",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 13,
          "quantityState": "published-unit-count",
          "quantityBoundary": "13 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Reflective motion-capture marker",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v1-vicon-set-screw",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v1-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Quadruped Robot 12dof v1",
          "name": "M4x10 Set Screw",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1 base robot",
          "quantity": 13,
          "quantityState": "published-unit-count",
          "quantityBoundary": "13 published at the v1 base robot top level. RCI does not merge it into the other revision boundary.",
          "role": "Motion-capture marker fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-power-management-board",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Power Management Board",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Onboard battery power management",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-lipo-battery",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "LiPo Battery SLS X-Cube 850mAh",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "SLS",
          "modelOrFile": "SLS X-Cube 850mAh 3S1P 11.1V",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Onboard energy storage",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-estop-switch",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "E-Stop Switch",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Emergency stop input",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-onoff-switch",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "On-Off Switch",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Main power control",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-status-led-ring",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Status LED Ring",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Adafruit",
          "modelOrFile": "Adafruit 1643 / NeoPixel Ring 12 x WS2812",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "System status indication",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-center-payload",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Body Structure Center Payload",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Center Payload",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Payload center plates",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-front-battery-lid",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Body Structure Front Batterie Lid",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Front Batterie Lid",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Battery-compartment lid",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-front-battery",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Body Structure Front Batterie",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Front Batterie",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Battery-compartment structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-top-imu-leds",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Body Structure Top IMU Leds",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Top IMU Leds",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "IMU and LED top structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-top-master-power",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Body Structure Top Master Power Board",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Body Structure Top Master Power Board",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Master- and power-board top structure",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-mount-switches",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Mount Switches",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Mount Switches",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Power-switch mounting",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-neopixel-cover",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Neo Pixel Cover",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Neo Pixel Cover",
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Status LED cover",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-fastener-m2x6",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Fastener M2 x 6 SHCS",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Power-board and master-board fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-fastener-m25x6",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Fastener M2.5 x 6 SHCS",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Rear switch-mount fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-fastener-m25x8",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Fastener M2.5 x 8 SHCS",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Front switch-mount fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-fastener-m3x6",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Fastener M3 x 6 SHCS",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Battery-lid fastening",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-helicoil-m25",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Helicoil M2.5 x 3.75mm",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Thread insert",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        },
        {
          "id": "solo12-v11-helicoil-m3",
          "robotRecordId": "bom-audit-odri-solo12",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceSection": "Bill of Materials — Upgrade Quadruped Robot 12dof v1.1",
          "name": "Helicoil M3 x 4.5mm",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "v1.1 autonomy upgrade",
          "quantity": 20,
          "quantityState": "published-unit-count",
          "quantityBoundary": "20 published at the v1.1 autonomy upgrade top level. RCI does not merge it into the other revision boundary.",
          "role": "Thread insert",
          "procurementBoundary": "Ordering references remain at the responsibility-party source. RCI preserves the versioned top-level identity and quantity without republishing supplier content or claiming a complete flattened procurement package.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this exact item and revision on one physical Solo12."
          ]
        }
      ],
      "normalizedBomItemCount": 45,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "solo12-v1-to-v11",
          "robotRecordId": "bom-audit-odri-solo12",
          "relationType": "version-upgrade",
          "from": "Solo12 quadruped robot v1",
          "to": "Solo12 v1.1 autonomy upgrade",
          "effectiveBoundary": "The repository publishes v1 base and v1.1 autonomy-upgrade folders separately at commit 66af152.",
          "systemImpact": "Onboard batteries, power management, switches, status LEDs and replacement body structures form a separate upgrade layer.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "solo12-v11-bom",
          "sourceRevision": "open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "unresolved": "The two top-level BOMs are not a single flattened as-built manifest."
        }
      ],
      "topologyNodes": [
        {
          "id": "solo12-v1-realtime-host",
          "robotRecordId": "bom-audit-odri-solo12",
          "label": "External real-time computer",
          "nodeKind": "external-host",
          "configurationBoundary": "Solo12 v1 master-board control host; the selected hardware BOM does not publish an exact computer model.",
          "sourceBomItemIds": [],
          "identityBoundary": "Computer SKU, network interface, PREEMPT_RT image, control application revision and physical cable identity are not part of the selected top-level BOM."
        },
        {
          "id": "solo12-v1-master-board-v2",
          "robotRecordId": "bom-audit-odri-solo12",
          "label": "Master Board v2",
          "nodeKind": "control",
          "configurationBoundary": "One Master Board v2 in the pinned Solo12 v1 top-level BOM.",
          "sourceBomItemIds": [
            "solo12-v1-master-board-v2"
          ],
          "identityBoundary": "The BOM fixes the v2 family name; PCB serial, assembled revision, ESP32 firmware and configured transport are not frozen for a physical unit."
        },
        {
          "id": "solo12-v1-micro-driver-stack",
          "robotRecordId": "bom-audit-odri-solo12",
          "label": "Six Micro Driver Board v2 units",
          "nodeKind": "control",
          "configurationBoundary": "Six dual-motor Micro Driver Board v2 units in the pinned Solo12 v1 top-level BOM.",
          "sourceBomItemIds": [
            "solo12-v1-micro-driver-board-v2"
          ],
          "identityBoundary": "Board serials, populated component lots, soldering state, firmware hashes and stack-to-joint assignment are not published as an as-built manifest."
        },
        {
          "id": "solo12-v1-four-leg-assemblies",
          "robotRecordId": "bom-audit-odri-solo12",
          "label": "Four nested 3DOF leg assemblies",
          "nodeKind": "actuation",
          "configurationBoundary": "Four top-level 3DOF Leg subassemblies; nested motor, encoder and mechanical revisions are intentionally not flattened here.",
          "sourceBomItemIds": [
            "solo12-v1-3dof-leg"
          ],
          "identityBoundary": "The top-level row does not identify twelve motor serials, encoder serials, phase ordering, calibrated offsets or a unit-level leg-to-driver map."
        },
        {
          "id": "solo12-v1-imu",
          "robotRecordId": "bom-audit-odri-solo12",
          "label": "LORD MicroStrain 3DM-CX5-25 IMU",
          "nodeKind": "control",
          "configurationBoundary": "One responsibility-party-listed base IMU on the Solo12 v1 body.",
          "sourceBomItemIds": [
            "solo12-v1-imu"
          ],
          "identityBoundary": "Sensor serial, firmware, calibration, mounting transform, UART configuration and timestamp alignment are not frozen for an observed unit."
        },
        {
          "id": "solo12-v1-external-24v-supply",
          "robotRecordId": "bom-audit-odri-solo12",
          "label": "External robot power supply",
          "nodeKind": "power",
          "configurationBoundary": "Tethered v1 wiring path documented separately from the v1.1 onboard-battery upgrade.",
          "sourceBomItemIds": [],
          "identityBoundary": "The selected v1 top-level BOM does not freeze an exact supply SKU, current limit, protection device, connector lot or measured output."
        }
      ],
      "interfaceRelations": [
        {
          "id": "solo12-v1-host-master-network",
          "robotRecordId": "bom-audit-odri-solo12",
          "fromNodeId": "solo12-v1-realtime-host",
          "toNodeId": "solo12-v1-master-board-v2",
          "relationType": "data-control",
          "interfaceLabel": "Master-board raw Ethernet or ESP-NOW transport to real-time computer",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "open-dynamic-robot-initiative/master-board commit 574fe988270aa3da948484ad3fa1f15dbf8162bf",
          "sourceUrl": "https://github.com/open-dynamic-robot-initiative/master-board/blob/574fe988270aa3da948484ad3fa1f15dbf8162bf/README.md",
          "sourceBomItemIds": [
            "solo12-v1-master-board-v2"
          ],
          "evidenceText": "The pinned master-board documentation says the board centralises actuator and sensor data and provides raw-frame Ethernet or raw ESP-NOW links to a real-time computer; published example round trips are 0.2 ms wired and 1.2 ms wireless for 127-byte messages.",
          "unresolved": [
            "The selected Solo12 v1 BOM does not freeze which transport one physical robot uses, host NIC or radio identity, frame revision, control-loop software, addressing, security, packet-loss behavior or measured latency.",
            "Published demonstrations are responsibility-party observations, not RCI measurements."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "solo12-v1-master-driver-spi",
          "robotRecordId": "bom-audit-odri-solo12",
          "fromNodeId": "solo12-v1-master-board-v2",
          "toNodeId": "solo12-v1-micro-driver-stack",
          "relationType": "data-control",
          "interfaceLabel": "SPI from Master Board v2 to six dual-motor Micro Driver v2 boards",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceUrl": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware/blob/66af1522b4fba0ec4a1d7790e66f5e4652208d30/electronics/details/details_wiring.md",
          "sourceBomItemIds": [
            "solo12-v1-master-board-v2",
            "solo12-v1-micro-driver-board-v2"
          ],
          "evidenceText": "The pinned wiring record specifies short 0.14 mm² conductors and five-pole Hirose DF13 connectors between master board and micro drivers; the pinned driver page specifies 1 kHz SPI and the master-board page supports up to eight SPI slaves.",
          "unresolved": [
            "Exact cable lengths, connector orientation, slave addressing, clock actually configured, firmware compatibility, signal integrity and the six-board physical order are not frozen.",
            "RCI has not captured SPI traffic."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "solo12-v1-driver-leg-actuation",
          "robotRecordId": "bom-audit-odri-solo12",
          "fromNodeId": "solo12-v1-micro-driver-stack",
          "toNodeId": "solo12-v1-four-leg-assemblies",
          "relationType": "data-control",
          "interfaceLabel": "Twelve motor phase paths and twelve five-pole encoder feedback paths",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceUrl": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware/blob/66af1522b4fba0ec4a1d7790e66f5e4652208d30/electronics/details/details_wiring.md",
          "sourceBomItemIds": [
            "solo12-v1-micro-driver-board-v2",
            "solo12-v1-3dof-leg"
          ],
          "evidenceText": "The pinned wiring documentation defines each actuator-module electrical interface as three 0.50 mm² motor-phase conductors with 2 mm connectors and five 0.14 mm² encoder conductors with a Hirose DF13 connector; six dual-motor drivers address the twelve-DOF top-level leg set.",
          "unresolved": [
            "The top-level evidence does not freeze joint-to-channel mapping, motor and encoder serials, phase order, encoder pin readings, calibrated zero offsets, cable lengths or continuity results for one robot.",
            "RCI has not powered a driver or observed encoder feedback."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "solo12-v1-imu-master-uart",
          "robotRecordId": "bom-audit-odri-solo12",
          "fromNodeId": "solo12-v1-imu",
          "toNodeId": "solo12-v1-master-board-v2",
          "relationType": "data-control",
          "interfaceLabel": "IMU ribbon/extension cable to master-board UART GPIO mapping",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceUrl": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware/blob/66af1522b4fba0ec4a1d7790e66f5e4652208d30/electronics/details/details_wiring.md",
          "sourceBomItemIds": [
            "solo12-v1-imu",
            "solo12-v1-master-board-v2"
          ],
          "evidenceText": "The pinned wiring page documents a ten-pin rectangular ribbon connector plus extension wires with a four-pin Hirose connector for the IMU; the master-board documentation says two free GPIOs are used for IMU communication via UART.",
          "unresolved": [
            "UART baud, voltage domain, exact pin map at this pinned cross-repository combination, firmware protocol, calibration, frame convention, synchronization and physical cable identity remain unresolved.",
            "RCI has not enumerated or sampled the IMU."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "solo12-v1-supply-driver-power",
          "robotRecordId": "bom-audit-odri-solo12",
          "fromNodeId": "solo12-v1-external-24v-supply",
          "toNodeId": "solo12-v1-micro-driver-stack",
          "relationType": "power",
          "interfaceLabel": "External supply through robot-interface wiring to XT30 driver power inputs; drivers operated at 24 V",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "open-dynamic-robot-initiative/open_robot_actuator_hardware commit 66af1522b4fba0ec4a1d7790e66f5e4652208d30",
          "sourceUrl": "https://github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware/blob/66af1522b4fba0ec4a1d7790e66f5e4652208d30/electronics/details/details_wiring.md",
          "sourceBomItemIds": [
            "solo12-v1-micro-driver-board-v2"
          ],
          "evidenceText": "The pinned wiring page describes 1 mm² supply-side conductors, a four-pole Ethernet-style robot-interface wire and robot-side XT30 power connectors; the pinned Micro Driver v2 page gives 5–32 V input and says the robots are operated at 24 V.",
          "unresolved": [
            "Exact source SKU, protection, current limit, polarity, connector allocation, branch topology, grounding, measured load voltage and transient behavior are not published for one Solo12 v1.",
            "This tethered v1 path must not be silently merged with the separate v1.1 two-battery power-management upgrade; RCI has not energized it."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-poppy-humanoid",
      "platform": "Poppy Humanoid",
      "responsibilityParty": "Poppy Project",
      "morphology": "humanoid",
      "platformRevisionBoundary": "Poppy Humanoid hardware documentation version 1.0 with alternative head configurations; repository README and BOM source commits are audited separately.",
      "selectedBomSurface": "Poppy Humanoid BOM markdown list, excluding the subsequent tools section",
      "bomFormat": "markdown-list",
      "declaredEntryCount": 47,
      "entryCountBoundary": "Forty-seven list items before the tools heading. Generic cable/bolt groupings and alternative head configurations mean the count is not a flattened procurement total.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "README and BOM source are commit-addressable but the selected BOM is not directly bound to a hardware release tag.",
      "lifecycleBoundary": "Assembly documentation records the MX-28 to MX-28AT replacement and two head options; hardware/software license boundaries are explicit.",
      "strongestPublishedEvidence": "Open STL/assembly material, actuator model groupings, separate wiring guides, explicit hardware/software licenses and obsolete-part substitution notes.",
      "largestRebuildGap": "The responsibility-party README states 25 required DYNAMIXEL actuators while selected BOM quantities sum to 20; generic rows and head options also prevent one exact as-built boundary.",
      "responsibilitySourceConflict": true,
      "conflictNote": "Official README: 25 DYNAMIXEL actuators required. Selected official BOM: legs 8 MX-28 + 3 MX-64, torso 1 AX + 5 MX-28 + 2 MX-64, head option A 1 AX = 20; difference = 5.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "editorialBoundary": "RCI preserves both official actuator counts. It does not repair the BOM, infer five missing placements, or select a head configuration on the responsibility party’s behalf.",
      "sources": [
        {
          "id": "poppy-humanoid-readme",
          "title": "Poppy Humanoid hardware repository README",
          "url": "https://github.com/poppy-project/poppy-humanoid/blob/d66c8fbd6aa3ebbf9e38399cc56aae3c155ee991/README.md",
          "location": "Robot identity, 25-actuator statement, cost boundary, licenses and trademark notice",
          "revision": "Commit d66c8fb · 2021-12-06"
        },
        {
          "id": "poppy-humanoid-bom",
          "title": "Poppy Humanoid BOM source",
          "url": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/bom.md",
          "location": "Component-list items, quantities and head alternatives",
          "revision": "Commit 2130828 · 2021-07-04"
        },
        {
          "id": "poppy-humanoid-assembly",
          "title": "Poppy Humanoid assembly guide",
          "url": "https://docs.poppy-project.org/en/assembly-guides/poppy-humanoid/",
          "location": "Hardware version, wiring/assembly routes and MX-28 replacement note"
        }
      ],
      "completeRebuildEvidencePackage": false,
      "verifiedDate": "2026-08-10",
      "slug": "poppy-humanoid",
      "href": "/robots/poppy-humanoid/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 6,
      "openDisclosureCount": 3,
      "disclosureCoveragePercent": 50,
      "sourceCount": 3,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "poppy-pelvis",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "Pelvis",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Pelvis structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-left-hip",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "left hip",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Left hip structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-right-hip",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "right hip",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Right hip structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-left-thigh",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "left thigh",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Left thigh structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-right-thigh",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "right thigh",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Right thigh structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-shin-pair",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "2x shin (symmetrical part)",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Lower-leg structures",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-left-foot",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "left foot",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Left foot structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-right-foot",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / 3D printed parts",
          "name": "right foot",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Right foot structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-mx28",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / Actuators",
          "name": "8x Robotis Dynamixel MX28-AT (or MX28-T)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL MX-28",
          "variant": "MX28-AT or MX28-T",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published inside the selected section boundary.",
          "role": "Leg-joint actuation",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM publishes an AT/T alternative and does not bind one communication-interface choice to an as-built unit."
          ]
        },
        {
          "id": "poppy-legs-mx64",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / Actuators",
          "name": "3x Robotis Dynamixel MX64-AT (or MX64-T)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL MX-64",
          "variant": "MX64-AT or MX64-T",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published inside the selected section boundary.",
          "role": "Higher-load leg-joint actuation",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM publishes an AT/T alternative and does not bind one communication-interface choice to an as-built unit."
          ]
        },
        {
          "id": "poppy-legs-hn07-n101",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / ROBOTIS parts",
          "name": "8x HN07-N101",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN07-N101",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-hn07-i101",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / ROBOTIS parts",
          "name": "6x HN07-I101",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN07-I101",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-hn05-n102",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / ROBOTIS parts",
          "name": "2x HN05-N102",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN05-N102",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-hn05-i101",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / ROBOTIS parts",
          "name": "2x HN05-I101",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN05-I101",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-bioloid-hub",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / ROBOTIS parts",
          "name": "1x Bioloid 3P Hub",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "Bioloid 3P Hub",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-cables-bolts",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / ROBOTIS parts",
          "name": "Cables & bolts …",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected list item does not publish an installed quantity.",
          "role": "Grouped cabling and fasteners",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row is an unquantified generic group; cable types, lengths, connectors, bolt sizes and counts are not published."
          ]
        },
        {
          "id": "poppy-legs-power-supply",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / Motor configuration",
          "name": "2x 12V power supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "12 V",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Leg-system external power",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Current rating, connector, polarity, regulatory variant and exact model are not published."
          ]
        },
        {
          "id": "poppy-legs-smps2dynamixel",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / Motor configuration",
          "name": "2x SMPS2Dynamixel",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "SMPS2Dynamixel",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Power interconnect for DYNAMIXEL bus",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-legs-usb2ax",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Biped legs / Motor configuration",
          "name": "2x USB2AX",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "USB2AX",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "USB-to-DYNAMIXEL bus interface",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Hardware and firmware revision are not published in the BOM item."
          ]
        },
        {
          "id": "poppy-chest",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / 3D printed parts",
          "name": "Chest",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Chest structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-spine",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / 3D printed parts",
          "name": "Spine",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Spine structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-abdomen",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / 3D printed parts",
          "name": "Abdomen",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Abdomen structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-mx64-double-rotation-set",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / 3D printed parts",
          "name": "Double rotation MX64 Set (3 parts)",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One named set is listed and the label says it contains three parts; the individual part identities are not enumerated here.",
          "role": "MX-64 double-rotation structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-mx28-double-rotation-set",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / 3D printed parts",
          "name": "Double rotation MX28 Set (3 parts)",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One named set is listed and the label says it contains three parts; the individual part identities are not enumerated here.",
          "role": "MX-28 double-rotation structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-ax12-ax18",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / Actuators",
          "name": "1x Robotis Dynamixel AX12-A (or AX18-A)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL AX-12A or AX-18A",
          "variant": "Published alternative",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Torso actuation",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM does not select one of the two actuator models."
          ]
        },
        {
          "id": "poppy-torso-mx28",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / Actuators",
          "name": "5x Robotis Dynamixel MX28-AT (or MX28-T)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL MX-28",
          "variant": "MX28-AT or MX28-T",
          "quantity": 5,
          "quantityState": "published-unit-count",
          "quantityBoundary": "5 units published inside the selected section boundary.",
          "role": "Torso and arm actuation",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM publishes an AT/T alternative and does not bind one interface choice to an as-built unit."
          ]
        },
        {
          "id": "poppy-torso-mx64",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / Actuators",
          "name": "2x Robotis Dynamixel MX64-AT (or MX64-T)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL MX-64",
          "variant": "MX64-AT or MX64-T",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Higher-load torso actuation",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM publishes an AT/T alternative and does not bind one interface choice to an as-built unit."
          ]
        },
        {
          "id": "poppy-torso-hn07-n101",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / ROBOTIS parts",
          "name": "5x HN07-N101",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN07-N101",
          "variant": null,
          "quantity": 5,
          "quantityState": "published-unit-count",
          "quantityBoundary": "5 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-hn07-i101",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / ROBOTIS parts",
          "name": "3x HN07-I101",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN07-I101",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-hn05-n102",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / ROBOTIS parts",
          "name": "2x HN05-N102",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN05-N102",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-hn05-i102",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / ROBOTIS parts",
          "name": "2x HN05-I102",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "HN05-I102",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-bioloid-hub",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / ROBOTIS parts",
          "name": "1x Bioloid 3P PCB HUB",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "Bioloid 3P PCB HUB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Actuator mounting or interconnect hardware",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-smps2dynamixel",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / ROBOTIS parts",
          "name": "2x SMPS2Dynamixel",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "SMPS2Dynamixel",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Power interconnect for DYNAMIXEL bus",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-torso-power-supply",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / Motor configuration",
          "name": "1x 12V power supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "12 V",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Torso external power",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Current rating, connector, polarity, regulatory variant and exact model are not published."
          ]
        },
        {
          "id": "poppy-torso-usb2ax",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Multiarticulated torso / Motor configuration",
          "name": "1x USB2AX",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "USB2AX",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "USB-to-DYNAMIXEL bus interface",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Hardware and firmware revision are not published in the BOM item."
          ]
        },
        {
          "id": "poppy-head-face",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Head face",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Head face structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-head-back",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Head back",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Head rear structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-fake-screen",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Fake manga screen",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Mechanical replacement for discontinued Manga screen",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The source identifies this as a replacement for a screen that is no longer manufactured; no as-built revision is selected."
          ]
        },
        {
          "id": "poppy-screen-support",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Screen support",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Head display support",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-camera-support",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Camera support",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Head camera mounting",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-speaker-left-support",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Speaker left support",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Left speaker mounting",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-speaker-right-support",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Speaker right support",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Right speaker mounting",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-neck",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / 3D printed parts",
          "name": "1x Neck",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Head-to-torso structure",
          "procurementBoundary": "Named printed structure; the selected BOM does not bind this name to an immutable per-unit print manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest confirms this item on one physical robot."
          ]
        },
        {
          "id": "poppy-head-ax12-ax18",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / Actuators",
          "name": "1x AX-12 or AX-18",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL AX-12 or AX-18",
          "variant": "Published alternative",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Head / neck actuation",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM does not select one of the two actuator models or publish the suffix revision."
          ]
        },
        {
          "id": "poppy-speaker-pair",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / Electronics",
          "name": "2x Speaker",
          "itemClass": "audio",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the selected section boundary.",
          "role": "Head audio output",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Impedance, power rating, dimensions, connector and exact model are not published."
          ]
        },
        {
          "id": "poppy-audio-amp",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / Electronics",
          "name": "1x Audio amp",
          "itemClass": "audio",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the selected section boundary.",
          "role": "Speaker amplification",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Electrical rating, interface and exact model are not published."
          ]
        },
        {
          "id": "poppy-raspberry-pi-3-sd",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "sourceId": "poppy-humanoid-bom",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceSection": "Head option A / Electronics",
          "name": "1x Raspberry Pi 3 + its SD card",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi 3",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One compute-board bundle is listed with its SD card; the SD card is not given a separate capacity or model.",
          "role": "Head compute and removable storage",
          "procurementBoundary": "RCI preserves the responsibility-party item name and alternatives without republishing retailer content or inferring a substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Raspberry Pi 3 submodel, RAM configuration, SD capacity, image and revision are not published in the BOM item."
          ]
        }
      ],
      "normalizedBomItemCount": 47,
      "manufacturerRelations": [
        {
          "manufacturerName": "ROBOTIS",
          "manufacturerSlug": "robotis",
          "href": "/manufacturer/robotis/",
          "normalizedItemCount": 18,
          "installedItemCount": 18,
          "itemIds": [
            "poppy-legs-mx28",
            "poppy-legs-mx64",
            "poppy-legs-hn07-n101",
            "poppy-legs-hn07-i101",
            "poppy-legs-hn05-n102",
            "poppy-legs-hn05-i101",
            "poppy-legs-bioloid-hub",
            "poppy-legs-smps2dynamixel",
            "poppy-torso-ax12-ax18",
            "poppy-torso-mx28",
            "poppy-torso-mx64",
            "poppy-torso-hn07-n101",
            "poppy-torso-hn07-i101",
            "poppy-torso-hn05-n102",
            "poppy-torso-hn05-i102",
            "poppy-torso-bioloid-hub",
            "poppy-torso-smps2dynamixel",
            "poppy-head-ax12-ax18"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        },
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 1,
          "installedItemCount": 1,
          "itemIds": [
            "poppy-raspberry-pi-3-sd"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "poppy-mx28-to-mx28at",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "relationType": "replacement",
          "from": "DYNAMIXEL MX-28",
          "to": "DYNAMIXEL MX-28AT",
          "effectiveBoundary": "The responsibility-party assembly documentation records the MX-28 to MX-28AT replacement.",
          "systemImpact": "Actuator suffix and interface choices must be fixed before wiring, control and procurement claims.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "poppy-humanoid-assembly",
          "sourceRevision": "Poppy Humanoid hardware documentation version 1.0 boundary",
          "unresolved": "No dated PCN, unit cutover or single selected AT/T as-built configuration is published."
        }
      ],
      "topologyNodes": [
        {
          "id": "poppy-humanoid-pi3",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Head-mounted Raspberry Pi 3",
          "nodeKind": "compute",
          "configurationBoundary": "Head option A at the pinned documentation commit, with Raspberry Pi 3 plus an unspecified SD card.",
          "sourceBomItemIds": [
            "poppy-raspberry-pi-3-sd"
          ],
          "identityBoundary": "Pi 3 submodel, RAM, PCB revision, SD identity, operating-system image and physical serials are not published."
        },
        {
          "id": "poppy-humanoid-upper-usb2ax",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Upper-body USB2AX adapter",
          "nodeKind": "control",
          "configurationBoundary": "One of the source-listed USB2AX adapters assigned by the wiring guide to the upper-body bus.",
          "sourceBomItemIds": [
            "poppy-torso-usb2ax"
          ],
          "identityBoundary": "Hardware revision, firmware, USB descriptor, cable and unit serial are not published."
        },
        {
          "id": "poppy-humanoid-lower-usb2ax",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Lower-body USB2AX adapter",
          "nodeKind": "control",
          "configurationBoundary": "One of the two leg-section USB2AX rows assigned by the wiring guide to the lower-body bus; the unused/duplicate row boundary is unresolved.",
          "sourceBomItemIds": [
            "poppy-legs-usb2ax"
          ],
          "identityBoundary": "The selected BOM publishes two leg-section USB2AX units plus one torso unit, while the wiring guide requires two total; RCI does not invent the disposition of the third listed unit."
        },
        {
          "id": "poppy-humanoid-upper-motor-bus",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Upper-body DYNAMIXEL bus",
          "nodeKind": "actuation",
          "configurationBoundary": "Named wiring path from head_y through abs_x; source quantities and the official 25-versus-20 actuator conflict remain unresolved.",
          "sourceBomItemIds": [
            "poppy-torso-ax12-ax18",
            "poppy-torso-mx28",
            "poppy-torso-mx64",
            "poppy-head-ax12-ax18"
          ],
          "identityBoundary": "AT/T and AX-12/AX-18 alternatives are not selected; the source does not provide an immutable as-built ordered chain with serials."
        },
        {
          "id": "poppy-humanoid-lower-motor-bus",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Lower-body DYNAMIXEL bus",
          "nodeKind": "actuation",
          "configurationBoundary": "Named wiring path from right/left hip-z joints to right/left ankle-y joints.",
          "sourceBomItemIds": [
            "poppy-legs-mx28",
            "poppy-legs-mx64"
          ],
          "identityBoundary": "AT/T alternatives, exact daisy-chain order, motor serials, cable lengths and branch topology are not frozen."
        },
        {
          "id": "poppy-humanoid-upper-12v-power",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Upper-body 12 V supply and SMPS2Dynamixel",
          "nodeKind": "power",
          "configurationBoundary": "Dedicated upper-body supply path in the standard two-supply wiring option.",
          "sourceBomItemIds": [
            "poppy-torso-power-supply",
            "poppy-torso-smps2dynamixel"
          ],
          "identityBoundary": "Supply SKU, current rating, connector, polarity, protection and the BOM-listed duplicate SMPS quantity are not resolved as an as-built manifest."
        },
        {
          "id": "poppy-humanoid-lower-12v-power",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Lower-body 12 V supply and SMPS2Dynamixel",
          "nodeKind": "power",
          "configurationBoundary": "Dedicated lower-body supply path in the standard two-supply wiring option.",
          "sourceBomItemIds": [
            "poppy-legs-power-supply",
            "poppy-legs-smps2dynamixel"
          ],
          "identityBoundary": "Supply SKU, current rating, connector, polarity, protection and the BOM-listed duplicate quantities are not resolved as an as-built manifest."
        },
        {
          "id": "poppy-humanoid-pi3-5v-power",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "label": "Separate 5 V micro-USB Pi supply",
          "nodeKind": "power",
          "configurationBoundary": "Third power cable required by the pinned wiring guide for the Raspberry Pi 3.",
          "sourceBomItemIds": [
            "poppy-raspberry-pi-3-sd"
          ],
          "identityBoundary": "The selected BOM row does not identify the 5 V supply; SKU, current rating, cable, connector quality, polarity and protection are not published."
        }
      ],
      "interfaceRelations": [
        {
          "id": "poppy-humanoid-pi3-upper-usb2ax",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-pi3",
          "toNodeId": "poppy-humanoid-upper-usb2ax",
          "relationType": "data-control",
          "interfaceLabel": "Pi 3 USB socket to upper-body USB2AX serial adapter",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/wiring_arrangement.md",
          "sourceBomItemIds": [
            "poppy-raspberry-pi-3-sd",
            "poppy-torso-usb2ax"
          ],
          "evidenceText": "The pinned wiring guide requires both USB2AX adapters to be plugged into Raspberry Pi 3 USB sockets and identifies the upper and lower buses as fully separate.",
          "unresolved": [
            "USB port assignment, device path, adapter firmware, cable identity, permissions, polling timing and observed enumeration are not frozen.",
            "RCI has not connected or enumerated this adapter."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "poppy-humanoid-pi3-lower-usb2ax",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-pi3",
          "toNodeId": "poppy-humanoid-lower-usb2ax",
          "relationType": "data-control",
          "interfaceLabel": "Pi 3 USB socket to lower-body USB2AX serial adapter",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/wiring_arrangement.md",
          "sourceBomItemIds": [
            "poppy-raspberry-pi-3-sd",
            "poppy-legs-usb2ax"
          ],
          "evidenceText": "The pinned wiring guide requires both USB2AX adapters at the Pi 3 and warns that swapped or incorrect bus wiring produces missing, excess or duplicated-bus motor reports.",
          "unresolved": [
            "The BOM lists three USB2AX units across sections while the wiring guide uses two; RCI does not assign or discard the unmatched listed unit.",
            "USB port, device path, firmware, cable and physical enumeration remain unverified."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "poppy-humanoid-upper-usb2ax-motor-bus",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-upper-usb2ax",
          "toNodeId": "poppy-humanoid-upper-motor-bus",
          "relationType": "data-control",
          "interfaceLabel": "Half-duplex DYNAMIXEL chain, configured IDs, 1,000,000 bps and zero return delay",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/addressing_dynamixel.md",
          "sourceBomItemIds": [
            "poppy-torso-usb2ax",
            "poppy-torso-ax12-ax18",
            "poppy-torso-mx28",
            "poppy-torso-mx64",
            "poppy-head-ax12-ax18"
          ],
          "evidenceText": "The pinned configuration guide defines per-motor IDs, 1,000,000 bps and zero return delay; the hardware guide describes daisy-chained DYNAMIXEL order forwarding, while wiring fixes the upper path from head_y to abs_x.",
          "unresolved": [
            "The selected BOM does not select all actuator alternatives or reconcile its 20 quantified actuators with the official 25-motor overview.",
            "Exact ordered chain, IDs present, EEPROM state, cable map and communication quality have not been observed by RCI."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "poppy-humanoid-lower-usb2ax-motor-bus",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-lower-usb2ax",
          "toNodeId": "poppy-humanoid-lower-motor-bus",
          "relationType": "data-control",
          "interfaceLabel": "Half-duplex DYNAMIXEL lower-body chain, configured IDs, 1,000,000 bps and zero return delay",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/addressing_dynamixel.md",
          "sourceBomItemIds": [
            "poppy-legs-usb2ax",
            "poppy-legs-mx28",
            "poppy-legs-mx64"
          ],
          "evidenceText": "The pinned configuration guide defines the shared communication settings; the wiring guide places right/left hip-z through right/left ankle-y on the isolated lower-body bus.",
          "unresolved": [
            "AT/T alternatives, exact branch/order, motor IDs actually stored, cable map, signal integrity and the 25-versus-20 actuator-count conflict remain unresolved.",
            "RCI has not scanned the bus."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "poppy-humanoid-upper-12v-bus-power",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-upper-12v-power",
          "toNodeId": "poppy-humanoid-upper-motor-bus",
          "relationType": "power",
          "interfaceLabel": "Dedicated 12 V supply through SMPS2Dynamixel into upper-body data/power bus",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/wiring_arrangement.md",
          "sourceBomItemIds": [
            "poppy-torso-power-supply",
            "poppy-torso-smps2dynamixel"
          ],
          "evidenceText": "The pinned wiring guide says each disconnected bus has its own power supply, SMPS2Dynamixel and USB2AX, and specifically requires a 12 V upper-body supply cable.",
          "unresolved": [
            "Supply and SMPS exact units, duplicate BOM quantities, connector, polarity, protection, current margin and measured loaded voltage are not frozen.",
            "The documented optional single-supply four-wire modification is excluded from this standard two-supply configuration."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "poppy-humanoid-lower-12v-bus-power",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-lower-12v-power",
          "toNodeId": "poppy-humanoid-lower-motor-bus",
          "relationType": "power",
          "interfaceLabel": "Dedicated 12 V supply through SMPS2Dynamixel into lower-body data/power bus",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/wiring_arrangement.md",
          "sourceBomItemIds": [
            "poppy-legs-power-supply",
            "poppy-legs-smps2dynamixel"
          ],
          "evidenceText": "The pinned wiring guide specifically requires a separate 12 V lower-body SMPS2Dynamixel supply cable in the normal configuration.",
          "unresolved": [
            "Supply SKU/current, the BOM-listed two-unit quantities, connector, polarity, protection, branch allocation and measured loaded voltage remain unresolved.",
            "RCI has not energized this bus."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "poppy-humanoid-pi3-separate-5v-power",
          "robotRecordId": "bom-audit-poppy-humanoid",
          "fromNodeId": "poppy-humanoid-pi3-5v-power",
          "toNodeId": "poppy-humanoid-pi3",
          "relationType": "power",
          "interfaceLabel": "Separate 5 V micro-USB compute supply",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "poppy-project/poppy-docs commit 213082801b82d227313e08f9f1dccf2b9aa70065",
          "sourceUrl": "https://github.com/poppy-project/poppy-docs/blob/213082801b82d227313e08f9f1dccf2b9aa70065/en/assembly-guides/poppy-humanoid/wiring_arrangement.md",
          "sourceBomItemIds": [
            "poppy-raspberry-pi-3-sd"
          ],
          "evidenceText": "The pinned wiring guide requires a third, 5 V micro-USB supply cable dedicated to the Raspberry Pi 3, separate from both 12 V actuator buses.",
          "unresolved": [
            "The BOM does not identify this supply; exact SKU, current capacity, cable resistance, connector, grounding relationship and measured Pi input are not published.",
            "RCI has not powered the compute board."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-turtlebot3-waffle-pi",
      "platform": "TurtleBot3 Waffle Pi",
      "responsibilityParty": "ROBOTIS",
      "morphology": "mobile-base",
      "platformRevisionBoundary": "Waffle Pi parts-list column at ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264. The shared table publishes two XM430-W210-T actuators, one OpenCR1.0, one generic Raspberry Pi, one LDS-01/LDS-02 alternative and one Raspberry Pi Camera v2.1; generic or alternative identities are not collapsed into one implied as-built unit.",
      "selectedBomSurface": "ROBOTIS e-Manual TurtleBot3 parts-list table — Waffle Pi quantity column",
      "bomFormat": "markdown-table",
      "declaredEntryCount": 46,
      "entryCountBoundary": "Forty-six shared publication rows are normalized again under the Waffle Pi quantity column. Rows with Waffle Pi quantity zero remain visible as noninstalled alternatives, so this is not a claim that 46 different items are fitted to one robot.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected source file and Waffle Pi quantities are commit-addressable, but the table is not a release-tagged or serial-numbered as-built manifest.",
      "lifecycleBoundary": "The official footnotes retain Raspberry Pi 3 B, 3 B+ and 4 B transitions and the LDS-01 to LDS-02 replacement. Waffle Pi is distinct from the earlier Intel Joule-based Waffle configuration whose production ended after Joule end-of-life.",
      "strongestPublishedEvidence": "A responsibility-party table gives separate Burger and Waffle Pi quantities, including two exact XM430-W210-T actuators, one OpenCR1.0, one camera, one battery and the selected chassis hardware quantities.",
      "largestRebuildGap": "The table does not bind a serialised Waffle Pi to one Raspberry Pi PCB revision, one LDS generation, one OpenCR hardware/firmware revision, actuator serials, calibration or independently observed wiring and performance.",
      "responsibilitySourceConflict": false,
      "conflictNote": "The generic Raspberry Pi row and LDS-01/LDS-02 alternative are retained as unresolved lifecycle boundaries rather than rewritten as a conflict or a current as-built fact.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "partial",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "This profile proves only what ROBOTIS published for the selected Waffle Pi column. It does not establish current kit contents, stock, exact unit revisions, safe wiring, continuous actuator output, endorsement or an RCI physical rebuild.",
      "sources": [
        {
          "id": "turtlebot3-waffle-pi-features",
          "title": "TurtleBot3 features and parts list",
          "url": "https://emanual.robotis.com/docs/en/platform/turtlebot3/features/",
          "location": "Rendered official Waffle Pi specifications, parts-list quantities, camera identity and lifecycle footnotes",
          "revision": "Observed 2026-08-13"
        },
        {
          "id": "turtlebot3-waffle-pi-features-source",
          "title": "TurtleBot3 parts-list source file",
          "url": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "location": "Commit-pinned Burger/Waffle Pi table and historical hardware footnotes",
          "revision": "Commit ee86bc9 · 2024-12-20"
        },
        {
          "id": "robotis-emanual-repository-waffle-pi",
          "title": "ROBOTIS e-Manual repository",
          "url": "https://github.com/ROBOTIS-GIT/emanual",
          "location": "Documentation source and MIT repository license metadata"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "turtlebot3-waffle-pi",
      "href": "/robots/turtlebot3-waffle-pi/",
      "morphologyLabel": "Mobile base",
      "publishedDisclosureCount": 4,
      "partialDisclosureCount": 6,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 58,
      "sourceCount": 3,
      "profileStage": "public-bom-audited",
      "manufacturerLink": {
        "name": "ROBOTIS manufacturer profile",
        "href": "/manufacturer/robotis/"
      },
      "normalizedBomItems": [
        {
          "id": "turtlebot3-waffle-pi-waffle-plate",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Waffle Plate",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Waffle Plate",
          "variant": "Waffle Pi selected · Burger column 8 · Waffle Pi column 24",
          "quantity": 24,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published in the Burger column and 24 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Layered chassis plate",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-plate-support-m3x35",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Plate Support M3x35mm",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Plate Support M3x35mm",
          "variant": "Waffle Pi selected · Burger column 4 · Waffle Pi column 12",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 12 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis plate spacing and support",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-plate-support-m3x45",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Plate Support M3x45mm",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Plate Support M3x45mm",
          "variant": "Waffle Pi selected · Burger column 10 · Waffle Pi column 10",
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 published in the Burger column and 10 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis plate spacing and support",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-pcb-support",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "PCB Support",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PCB Support",
          "variant": "Waffle Pi selected · Burger column 12 · Waffle Pi column 12",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 published in the Burger column and 12 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Electronics-board mounting",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-wheel",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Wheel",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Wheel",
          "variant": "Waffle Pi selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Differential-drive wheel",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-tire",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Tire",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Tire",
          "variant": "Waffle Pi selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Wheel traction surface",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ball-caster",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Ball Caster",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Ball Caster",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Passive chassis support",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-camera-bracket",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Chassis Parts",
          "name": "Camera Bracket",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Camera Bracket",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi camera mounting",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-xl430-w250-t",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Motors",
          "name": "DYNAMIXEL XL430-W250-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL XL430-W250-T",
          "variant": "Waffle Pi selected · Burger column 2 · Waffle Pi column 0",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 0 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Burger wheel actuation",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-xm430-w210-t",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Motors",
          "name": "DYNAMIXEL XM430-W210-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "DYNAMIXEL XM430-W210-T",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi wheel actuation",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-opencr10",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Boards",
          "name": "OpenCR1.0",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "OpenCR1.0",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Motor, sensor and ROS communication control board",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-raspberry-pi",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Boards",
          "name": "Raspberry Pi",
          "itemClass": "compute",
          "identityState": "generic-description",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Main single-board computer",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row remains generic. Official footnotes state Pi 3 Model B for earlier units, Pi 3 Model B+ from 2019 and Pi 4 Model B from September 2021; no unit manifest selects one."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-usb2lds",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Boards",
          "name": "USB2LDS",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "USB2LDS",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "USB interface for LDS sensor",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-bt410-set",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Remote Controllers",
          "name": "BT-410 Set (Bluetooth 4, BLE)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "BT-410 Set (Bluetooth 4, BLE)",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi Bluetooth link",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-rc100b",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Remote Controllers",
          "name": "RC-100B (Remote Controller)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "RC-100B (Remote Controller)",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi handheld controller",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-lds01-lds02",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Sensors",
          "name": "LDS-01 or LDS-02",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": "LDS-01 or LDS-02",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "360-degree laser distance sensing",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row publishes an LDS-01/LDS-02 alternative. The official footnote says LDS-02 replaced LDS-01 from 2022; no unit manifest selects one sensor generation."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-raspberry-pi-camera-v21",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Sensors",
          "name": "Raspberry Pi Camera v2.1",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi Camera v2.1",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi visual sensing",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-microsd-card",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Memory",
          "name": "MicroSD Card",
          "itemClass": "storage",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "MicroSD Card",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Boot and software storage",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-raspberry-pi-power-cable",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "Raspberry Pi Power Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Raspberry Pi Power Cable",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "SBC power interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-lipo-extension-cable",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "Li-Po Battery Extension Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Li-Po Battery Extension Cable",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Battery power extension",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-dynamixel-opencr-cable",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "DYNAMIXEL to OpenCR Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DYNAMIXEL to OpenCR Cable",
          "variant": "Waffle Pi selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Actuator bus interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-usb-cable",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "USB Cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "USB Cable",
          "variant": "Waffle Pi selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "USB data / service interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-camera-cable",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Cables",
          "name": "Camera Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Camera Cable",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi camera interconnect",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-smps-12v5a",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "SMPS 12V5A",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "SMPS 12V5A",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "External DC power supply",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ac-cord",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "A/C Cord",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "A/C Cord",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Mains input cord",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-lipo-battery",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "LIPO Battery 11.1V 1,800mAh",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "LIPO Battery 11.1V 1,800mAh",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Mobile energy storage",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-lipo-charger",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Powers",
          "name": "LIPO Battery Charger",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "LIPO Battery Charger",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Battery charging",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-screw-driver",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Tools",
          "name": "Screw driver",
          "itemClass": "tool",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Screw driver",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Assembly tool",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-rivet-tool",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Tools",
          "name": "Rivet tool",
          "itemClass": "tool",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Rivet tool",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Assembly tool",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-m2x4-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2x4mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2x4mm_K",
          "variant": "Waffle Pi selected · Burger column 8 · Waffle Pi column 8",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 published in the Burger column and 8 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-t2x6-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_T2x6mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_T2x6mm_K",
          "variant": "Waffle Pi selected · Burger column 4 · Waffle Pi column 8",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 8 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-m2x12-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2x12mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2x12mm_K",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-m25x8-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2.5x8mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2.5x8mm_K",
          "variant": "Waffle Pi selected · Burger column 16 · Waffle Pi column 16",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published in the Burger column and 16 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-m25x12-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2.5x12mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2.5x12mm_K",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 20",
          "quantity": 20,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 20 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-t26x12-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_T2.6x12mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_T2.6x12mm_K",
          "variant": "Waffle Pi selected · Burger column 16 · Waffle Pi column 0",
          "quantity": 0,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published in the Burger column and 0 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Burger chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-m25x16-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M2.5x16mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M2.5x16mm_K",
          "variant": "Waffle Pi selected · Burger column 4 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-ph-m3x8-k",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "PH_M3x8mm_K",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PH_M3x8mm_K",
          "variant": "Waffle Pi selected · Burger column 44 · Waffle Pi column 140",
          "quantity": 140,
          "quantityState": "published-unit-count",
          "quantityBoundary": "44 published in the Burger column and 140 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis fastener",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-nut-m2",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "NUT_M2",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "NUT_M2",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi chassis nut",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-nut-m25",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "NUT_M2.5",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "NUT_M2.5",
          "variant": "Waffle Pi selected · Burger column 20 · Waffle Pi column 24",
          "quantity": 24,
          "quantityState": "published-unit-count",
          "quantityBoundary": "20 published in the Burger column and 24 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis nut",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-nut-m3",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "NUT_M3",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "NUT_M3",
          "variant": "Waffle Pi selected · Burger column 16 · Waffle Pi column 96",
          "quantity": 96,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 published in the Burger column and 96 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis nut",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-rivet-1",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Rivet_1",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Rivet_1",
          "variant": "Waffle Pi selected · Burger column 14 · Waffle Pi column 22",
          "quantity": 22,
          "quantityState": "published-unit-count",
          "quantityBoundary": "14 published in the Burger column and 22 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis rivet",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-rivet-2",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Rivet_2",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Rivet_2",
          "variant": "Waffle Pi selected · Burger column 2 · Waffle Pi column 2",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 published in the Burger column and 2 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis rivet",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-spacer",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Spacer",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Spacer",
          "variant": "Waffle Pi selected · Burger column 4 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis spacing hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-silicone-spacer",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Silicone Spacer",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Silicone Spacer",
          "variant": "Waffle Pi selected · Burger column 0 · Waffle Pi column 4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "0 published in the Burger column and 4 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Waffle Pi compliant spacing hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-bracket",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Bracket",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Bracket",
          "variant": "Waffle Pi selected · Burger column 5 · Waffle Pi column 6",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "5 published in the Burger column and 6 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis mounting hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        },
        {
          "id": "turtlebot3-waffle-pi-adapter-plate",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceSection": "Parts List / Miscellaneous",
          "name": "Adapter Plate",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": "Adapter Plate",
          "variant": "Waffle Pi selected · Burger column 1 · Waffle Pi column 1",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 published in the Burger column and 1 in the Waffle Pi column at the selected e-Manual commit. Zero means the shared row is not installed on the selected Waffle Pi configuration; it is retained to preserve the 46-row publication surface.",
          "role": "Chassis adaptation hardware",
          "procurementBoundary": "The commit-pinned e-Manual row is an official responsibility-party statement. RCI does not infer an as-shipped revision, supplier, current stock state or substitution beyond the published footnotes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised TurtleBot3 unit is bound to this exact row, quantity and hardware revision."
          ]
        }
      ],
      "normalizedBomItemCount": 46,
      "manufacturerRelations": [
        {
          "manufacturerName": "ROBOTIS",
          "manufacturerSlug": "robotis",
          "href": "/manufacturer/robotis/",
          "normalizedItemCount": 7,
          "installedItemCount": 6,
          "itemIds": [
            "turtlebot3-waffle-pi-xl430-w250-t",
            "turtlebot3-waffle-pi-xm430-w210-t",
            "turtlebot3-waffle-pi-opencr10",
            "turtlebot3-waffle-pi-usb2lds",
            "turtlebot3-waffle-pi-bt410-set",
            "turtlebot3-waffle-pi-rc100b",
            "turtlebot3-waffle-pi-lds01-lds02"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        },
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 2,
          "installedItemCount": 2,
          "itemIds": [
            "turtlebot3-waffle-pi-raspberry-pi",
            "turtlebot3-waffle-pi-raspberry-pi-camera-v21"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-turtlebot3-waffle-pi-xm430-w210-t",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "robotBomItemId": "turtlebot3-waffle-pi-xm430-w210-t",
          "componentId": "cmp-robotis-xm430-w210-t",
          "componentSlug": "robotis-xm430-w210-t",
          "componentName": "ROBOTIS DYNAMIXEL XM430-W210-T",
          "componentOfficialModel": "XM430-W210-T",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "DYNAMIXEL XM430-W210-T",
          "publishedQuantity": 2,
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "identityEvidence": "The pinned TurtleBot3 Waffle Pi responsibility-party parts list publishes “DYNAMIXEL XM430-W210-T” in the Waffle Pi column with quantity 2 and zero in the Burger column. The RCI component catalog independently represents the exact TTL T-suffix model from the ROBOTIS e-Manual.",
          "quantityBoundary": "Two units are published for the selected Waffle Pi configuration. RCI did not inspect a serialised Waffle Pi, actuator serials, firmware, IDs, cable routing or an as-shipped kit revision.",
          "evidenceBoundary": "This crosswalk proves that one pinned responsibility-party BOM row and one exact RCI component record refer to XM430-W210-T. It does not prove installed serials, current supply, continuous torque, allowable stall operation, system compatibility, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-turtlebot3-waffle-pi-opencr10",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "robotBomItemId": "turtlebot3-waffle-pi-opencr10",
          "componentId": "cmp-robotis-opencr10",
          "componentSlug": "robotis-opencr10",
          "componentName": "ROBOTIS OpenCR 1.0",
          "componentOfficialModel": "OpenCR1.0",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "OpenCR1.0",
          "publishedQuantity": 1,
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "identityEvidence": "The pinned TurtleBot3 Waffle Pi responsibility-party parts list publishes “OpenCR1.0” in the Waffle Pi column with quantity 1. The RCI component catalog independently represents that exact board identity from the official ROBOTIS e-Manual.",
          "quantityBoundary": "One board is published for the selected Waffle Pi configuration. RCI did not inspect a serialised board, populated IMU revision, bootloader, flashed firmware or electrical state.",
          "evidenceBoundary": "This relation establishes an exact public-BOM board identity only. It does not prove firmware state, electrical compatibility, bus timing, current capacity, installed serial, endorsement or physical validation.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [
        {
          "id": "turtlebot3-waffle-pi-pi3b-to-pi3bplus",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "relationType": "standard-configuration-change",
          "from": "Raspberry Pi 3 Model B",
          "to": "Raspberry Pi 3 Model B+",
          "effectiveBoundary": "Pi 3 Model B+ included as standard starting in 2019; earlier units used Pi 3 Model B.",
          "systemImpact": "Main compute identity, board I/O and software-image compatibility can differ across Waffle Pi units sharing the same product name.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "No unit serial or shipment interval is published in the selected source."
        },
        {
          "id": "turtlebot3-waffle-pi-pi3bplus-to-pi4b",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "relationType": "standard-configuration-change",
          "from": "Raspberry Pi 3 Model B+",
          "to": "Raspberry Pi 4 Model B",
          "effectiveBoundary": "Pi 4 Model B included as standard since September 2021.",
          "systemImpact": "Compute performance, power, thermals, connectors and software-image requirements change.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "RAM capacity and exact board revision are not bound to one shipped Waffle Pi unit."
        },
        {
          "id": "turtlebot3-waffle-pi-lds01-to-lds02",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "relationType": "replacement",
          "from": "LDS-01",
          "to": "LDS-02",
          "effectiveBoundary": "LDS-02 replaced LDS-01 from 2022.",
          "systemImpact": "Sensor generation, cabling, driver and measurement behavior may differ across otherwise similar Waffle Pi units.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "turtlebot3-features-source",
          "sourceRevision": "ROBOTIS e-Manual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "unresolved": "The selected source does not provide a unit-level cutover serial."
        }
      ],
      "topologyNodes": [
        {
          "id": "turtlebot3-waffle-pi-main-compute",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "label": "Raspberry Pi main compute",
          "nodeKind": "compute",
          "configurationBoundary": "One generic Raspberry Pi row in the Waffle Pi column; official lifecycle footnotes span Pi 3 Model B, Pi 3 Model B+ and Pi 4 Model B eras.",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-raspberry-pi",
            "turtlebot3-waffle-pi-microsd-card"
          ],
          "identityBoundary": "The selected commit does not bind one PCB revision, RAM capacity, microSD image, operating system or serialised unit."
        },
        {
          "id": "turtlebot3-waffle-pi-opencr10",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "label": "OpenCR1.0 control board",
          "nodeKind": "control",
          "configurationBoundary": "One exact OpenCR1.0 row in the Waffle Pi column.",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-opencr10"
          ],
          "identityBoundary": "The BOM fixes the board name but not one physical board revision, IMU population, bootloader or firmware image."
        },
        {
          "id": "turtlebot3-waffle-pi-xm430-pair",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "label": "Two XM430-W210-T drive actuators",
          "nodeKind": "actuation",
          "configurationBoundary": "Two exact TTL XM430-W210-T actuators in the Waffle Pi column; the Burger column publishes zero.",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-xm430-w210-t"
          ],
          "identityBoundary": "Published model and quantity do not establish serials, device IDs, firmware, allowable duty cycle, calibration or physical condition."
        },
        {
          "id": "turtlebot3-waffle-pi-lds-path",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "label": "USB2LDS plus LDS-01/LDS-02 sensing path",
          "nodeKind": "perception",
          "configurationBoundary": "One USB2LDS and one published LDS-01-or-LDS-02 alternative in the Waffle Pi column.",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-usb2lds",
            "turtlebot3-waffle-pi-lds01-lds02"
          ],
          "identityBoundary": "The official footnote says LDS-02 replaced LDS-01 from 2022, but the shared row and this profile do not select one unit-level sensor generation, firmware, calibration or serial."
        },
        {
          "id": "turtlebot3-waffle-pi-camera-v21",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "label": "Raspberry Pi Camera v2.1 visual path",
          "nodeKind": "perception",
          "configurationBoundary": "One Raspberry Pi Camera v2.1 and one camera cable in the Waffle Pi column; the Burger column publishes zero.",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-raspberry-pi-camera-v21",
            "turtlebot3-waffle-pi-camera-cable"
          ],
          "identityBoundary": "The table does not bind a camera serial, module PCB revision, lens/calibration artifact, exact Pi connector, cable revision or tested image mode."
        }
      ],
      "interfaceRelations": [
        {
          "id": "turtlebot3-waffle-pi-opencr-xm430-ttl-bus",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "fromNodeId": "turtlebot3-waffle-pi-opencr10",
          "toNodeId": "turtlebot3-waffle-pi-xm430-pair",
          "relationType": "data-control",
          "interfaceLabel": "TTL DYNAMIXEL multidrop path through two published DYNAMIXEL-to-OpenCR cables",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceUrl": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-opencr10",
            "turtlebot3-waffle-pi-xm430-w210-t",
            "turtlebot3-waffle-pi-dynamixel-opencr-cable"
          ],
          "evidenceText": "The Waffle Pi column publishes one OpenCR1.0, two exact XM430-W210-T actuators and two DYNAMIXEL-to-OpenCR cables. The XM430 T suffix is the TTL half-duplex variant and OpenCR publishes TTL DYNAMIXEL ports.",
          "unresolved": [
            "Exact OpenCR ports, daisy-chain order, device IDs, baud rate, protocol/register configuration, cable revisions and firmware are not frozen.",
            "RCI has not inspected, powered or traffic-tested a TurtleBot3 Waffle Pi."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "turtlebot3-waffle-pi-pi-opencr-usb-path",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "fromNodeId": "turtlebot3-waffle-pi-main-compute",
          "toNodeId": "turtlebot3-waffle-pi-opencr10",
          "relationType": "data-control",
          "interfaceLabel": "Published Raspberry Pi / OpenCR / USB-cable ROS-control path; exact ports and software not frozen",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceUrl": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-raspberry-pi",
            "turtlebot3-waffle-pi-opencr10",
            "turtlebot3-waffle-pi-usb-cable"
          ],
          "evidenceText": "The official Waffle Pi configuration publishes one Raspberry Pi, one OpenCR1.0 and USB cables, while the feature description identifies OpenCR as the open-source board used for ROS communication.",
          "unresolved": [
            "The selected surface does not fix Pi generation/RAM, USB ports, cable assignment, USB descriptor, ROS distribution, OpenCR firmware, latency or recovery behavior.",
            "RCI has not enumerated or load-tested this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "turtlebot3-waffle-pi-pi-lds-usb-path",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "fromNodeId": "turtlebot3-waffle-pi-main-compute",
          "toNodeId": "turtlebot3-waffle-pi-lds-path",
          "relationType": "data-control",
          "interfaceLabel": "USB host path through one USB2LDS to the published LDS-01/LDS-02 alternative",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceUrl": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-raspberry-pi",
            "turtlebot3-waffle-pi-usb2lds",
            "turtlebot3-waffle-pi-lds01-lds02",
            "turtlebot3-waffle-pi-usb-cable"
          ],
          "evidenceText": "The Waffle Pi parts surface publishes one Raspberry Pi, one USB2LDS, one LDS-01-or-LDS-02 sensor and USB cables; this relation preserves the adapter-mediated sensing path without selecting one physical sensor generation.",
          "unresolved": [
            "The selected source does not bind one USB port/cable, LDS generation, firmware, driver, scan mode, timestamp path or calibration.",
            "RCI has not captured scans or measured timing, range or reliability."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "turtlebot3-waffle-pi-pi-camera-cable-path",
          "robotRecordId": "bom-audit-turtlebot3-waffle-pi",
          "fromNodeId": "turtlebot3-waffle-pi-main-compute",
          "toNodeId": "turtlebot3-waffle-pi-camera-v21",
          "relationType": "data-control",
          "interfaceLabel": "Published Raspberry Pi Camera v2.1 cable path; physical connector and image configuration not frozen",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "ROBOTIS-GIT/emanual commit ee86bc91df505e7bc8b3e4337216c054cdc67264",
          "sourceUrl": "https://github.com/ROBOTIS-GIT/emanual/blob/ee86bc91df505e7bc8b3e4337216c054cdc67264/docs/en/platform/turtlebot3/features/features.md",
          "sourceBomItemIds": [
            "turtlebot3-waffle-pi-raspberry-pi",
            "turtlebot3-waffle-pi-raspberry-pi-camera-v21",
            "turtlebot3-waffle-pi-camera-cable"
          ],
          "evidenceText": "The Waffle Pi column publishes one Raspberry Pi Camera v2.1 and one camera cable, while the hardware specification identifies the camera as a Waffle Pi feature.",
          "unresolved": [
            "The table does not freeze Pi generation, connector/port, cable electrical revision, camera firmware, sensor mode, calibration, exposure or timestamp behavior.",
            "RCI has not captured or benchmarked images from this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-am-arm200",
      "platform": "AM-ARM200 leader / follower pair",
      "responsibilityParty": "AM-ARM project / Yi-Teng Li",
      "morphology": "desktop-arm",
      "platformRevisionBoundary": "AM-ARM200 follower arm, leader arm and optional camera rows at repository commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6; the source describes an upgrade path from SO-100/SO-101 but does not establish drop-in compatibility for every prior build.",
      "selectedBomSurface": "AM-ARM200 Bill of Materials: Follower Arm, Leader Arm and Optional tables",
      "bomFormat": "markdown-table",
      "declaredEntryCount": 18,
      "entryCountBoundary": "Nine follower-arm rows, six leader-arm rows and three optional-camera rows. Source totals are price totals, not installed-unit totals. The optional rows remain separate from the base leader/follower boundary.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The BOM is pinned to a repository commit but not to a numbered AM-ARM200 hardware release or a serialised unit manifest.",
      "lifecycleBoundary": "The responsibility party says existing SO-100/SO-101 users can upgrade by adding missing parts; RCI records this as a project statement, not independently verified compatibility or a complete upgrade delta.",
      "strongestPublishedEvidence": "Exact servo voltage and gear variants, quantities, regional procurement links, follower/leader separation, and linked STL/STP production-file directories under an Apache-2.0 repository license.",
      "largestRebuildGap": "No release-tagged as-built manifest, wiring/net definition, controller firmware binding, validated upgrade delta or independent physical rebuild closes the published list.",
      "responsibilitySourceConflict": true,
      "conflictNote": "The leader-arm heat-set-insert row publishes Qty 4 while its note says “total 36 pcs (Servo Mount×24, Side Panel×12)”. RCI preserves both statements and does not choose one.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "not-published",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "The record establishes what the selected project BOM publishes. It does not establish retailer availability, price currency, electrical safety, upgrade compatibility, or that a physical leader/follower pair was built from this exact snapshot.",
      "sources": [
        {
          "id": "am-arm200-bom",
          "title": "AM-ARM200 Bill of Materials",
          "url": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/am-arm200/bom.md",
          "location": "Follower Arm, Leader Arm and Optional line items, quantities, variants, regional links and printed-part directories",
          "revision": "Commit 5b03af1 · verified 2026-08-13"
        },
        {
          "id": "am-arm-repository",
          "title": "AM-ARM hardware repository",
          "url": "https://github.com/liyiteng/AM-ARM/tree/5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "location": "Project identity, AM-ARM200 hardware tree, STL/STP files and repository license",
          "revision": "Commit 5b03af1 · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "am-arm200",
      "href": "/robots/am-arm200/",
      "morphologyLabel": "Desktop arm",
      "publishedDisclosureCount": 5,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 3,
      "disclosureCoveragePercent": 58,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "am-arm200-follower-sts3215",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "Servo motor — Feetech STS3215",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "STS3215",
          "variant": "12 V · 1/345",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower-arm actuation",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this item on one physical AM-ARM200 pair."
          ]
        },
        {
          "id": "am-arm200-follower-sts3095",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "Servo motor — Feetech STS3095",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "STS3095",
          "variant": "12 V · 1/345",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Higher-load follower-arm actuation",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this item on one physical AM-ARM200 pair."
          ]
        },
        {
          "id": "am-arm200-follower-m3x10",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "Hex socket screw M3×10",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×10",
          "variant": "Follower Arm",
          "quantity": 74,
          "quantityState": "published-unit-count",
          "quantityBoundary": "74 units published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower-arm structural fastening",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this item on one physical AM-ARM200 pair."
          ]
        },
        {
          "id": "am-arm200-follower-heat-insert",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "Heat-set insert M3×5×4",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×5×4",
          "variant": "Follower Arm",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower-arm threaded insert",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row does not explain whether quantity 4 means units, packs or another purchase boundary."
          ]
        },
        {
          "id": "am-arm200-follower-servo-extension",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "Servo extension cable SCS 3-pin",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "SCS 3-pin cable",
          "variant": "26 cm",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower servo-bus extension",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this item on one physical AM-ARM200 pair."
          ]
        },
        {
          "id": "am-arm200-follower-power",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "DC 12 V 4 A 48 W AC adapter",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DC 12 V 4 A 48 W AC adapter",
          "variant": "12 V · 4 A · 48 W",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower-arm external power",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Connector dimensions and polarity are represented only by a selected retailer target, not by an RCI-verified electrical specification."
          ]
        },
        {
          "id": "am-arm200-follower-usbc",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "USB Type-C cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Follower Arm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower controller-to-host cable",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Connector pair, data capability, length and current rating are not published in the row."
          ]
        },
        {
          "id": "am-arm200-follower-controller",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "Waveshare Bus Servo Controller",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "Bus Servo Adapter (A)",
          "variant": "Follower Arm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Follower Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Follower host-to-servo interface",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM row does not bind a hardware revision, firmware version or electrical configuration."
          ]
        },
        {
          "id": "am-arm200-follower-printed-parts",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Follower Arm",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "am-arm200/stl/ and am-arm200/stp/",
          "variant": "PLA / PETG / ABS alternatives",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One aggregate printed-parts row is published. It is not a flattened count of individual printable parts.",
          "role": "Follower-arm custom structure",
          "procurementBoundary": "The row links STL/STP directories but does not publish a per-file print quantity, material allocation or unit-level production manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Material is an alternative, not a selected as-built value.",
            "Per-file quantity, print orientation, process and revision manifest are not published in the BOM table."
          ]
        },
        {
          "id": "am-arm200-leader-sts3215",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Leader Arm",
          "name": "Servo motor — Feetech STS3215",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "STS3215",
          "variant": "5 V · 1/147",
          "quantity": 7,
          "quantityState": "published-unit-count",
          "quantityBoundary": "7 units published inside the Leader Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Leader-arm actuation",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this item on one physical AM-ARM200 pair."
          ]
        },
        {
          "id": "am-arm200-leader-heat-insert",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Leader Arm",
          "name": "Heat-set insert M3×5×4",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×5×4",
          "variant": "Leader Arm",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The Qty column publishes 4, while the same row note says “total 36 pcs (Servo Mount×24, Side Panel×12)”. RCI preserves the conflict and does not convert either value.",
          "role": "Leader-arm threaded insert",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Responsibility-source quantity conflict: Qty 4 versus note total 36 pcs.",
            "It is unresolved whether 4 represents packs, a stale value or another procurement boundary."
          ]
        },
        {
          "id": "am-arm200-leader-power",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Leader Arm",
          "name": "DC 5 V AC adapter",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DC 5 V AC adapter",
          "variant": "5 V",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Leader Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Leader-arm external power",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Current rating, connector dimensions and polarity are not published in the row."
          ]
        },
        {
          "id": "am-arm200-leader-usbc",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Leader Arm",
          "name": "USB Type-C cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Leader Arm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Leader Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Leader controller-to-host cable",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Connector pair, data capability, length and current rating are not published in the row."
          ]
        },
        {
          "id": "am-arm200-leader-controller",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Leader Arm",
          "name": "Waveshare Bus Servo Controller",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "Bus Servo Adapter (A)",
          "variant": "Leader Arm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Leader Arm table. This is a source-row quantity, not an as-built count.",
          "role": "Leader host-to-servo interface",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The BOM row does not bind a hardware revision, firmware version or electrical configuration."
          ]
        },
        {
          "id": "am-arm200-leader-printed-parts",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Leader Arm",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "am-arm200/stl/ and am-arm200/stp/",
          "variant": "PLA / PETG / ABS alternatives",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One aggregate printed-parts row is published. It is not a flattened count of individual printable parts.",
          "role": "Leader-arm custom structure",
          "procurementBoundary": "The row links STL/STP directories but does not publish a per-file print quantity, material allocation or unit-level production manifest.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Material is an alternative, not a selected as-built value.",
            "Per-file quantity, print orientation, process and revision manifest are not published in the BOM table."
          ]
        },
        {
          "id": "am-arm200-optional-camera",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Optional",
          "name": "USB camera",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "USB camera",
          "variant": "720p · 36×36 mm form factor",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published inside the Optional table. This is a source-row quantity, not an as-built count.",
          "role": "Optional visual sensing",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No exact camera manufacturer, model, sensor, lens, interface mode or mounting calibration is published."
          ]
        },
        {
          "id": "am-arm200-optional-m2x12",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Optional",
          "name": "M2×12 Phillips screw",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M2×12",
          "variant": "Optional",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the Optional table. This is a source-row quantity, not an as-built count.",
          "role": "Optional camera-mount fastening",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit-level as-built manifest or independent rebuild record confirms this item on one physical AM-ARM200 pair."
          ]
        },
        {
          "id": "am-arm200-optional-bearing",
          "robotRecordId": "bom-audit-am-arm200",
          "sourceId": "am-arm200-bom",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceSection": "AM-ARM200 Bill of Materials / Optional",
          "name": "Bearing 12×18×4 mm",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "6701-2RS class / 12×18×4 mm",
          "variant": "Optional",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published inside the Optional table. This is a source-row quantity, not an as-built count.",
          "role": "Optional camera-mount bearing",
          "procurementBoundary": "Regional purchase links remain at the responsibility-party source. RCI does not republish prices, assert availability or convert a linked retailer item into a verified substitute.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The row dimensions are published, but the generic item name does not independently bind a manufacturer or exact tolerance class."
          ]
        }
      ],
      "normalizedBomItemCount": 18,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "am-arm200-external-host",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "External host computer",
          "nodeKind": "external-host",
          "configurationBoundary": "Computer used to configure and operate the AM-ARM200 pair; no exact host is listed in the selected BOM.",
          "sourceBomItemIds": [],
          "identityBoundary": "Host SKU, operating system, USB controller, software environment and physical identity are not frozen by the hardware BOM."
        },
        {
          "id": "am-arm200-follower-controller",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "Follower Waveshare Bus Servo Controller",
          "nodeKind": "control",
          "configurationBoundary": "One Bus Servo Adapter (A) assigned to the 12 V follower arm.",
          "sourceBomItemIds": [
            "am-arm200-follower-controller",
            "am-arm200-follower-usbc"
          ],
          "identityBoundary": "Controller hardware revision, firmware, USB descriptor, cable construction and serial are not published."
        },
        {
          "id": "am-arm200-follower-servo-bus",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "Seven-servo 12 V follower bus",
          "nodeKind": "actuation",
          "configurationBoundary": "Four STS3215 plus three STS3095 servos, joint IDs 1–7, at the pinned hardware revision.",
          "sourceBomItemIds": [
            "am-arm200-follower-sts3215",
            "am-arm200-follower-sts3095",
            "am-arm200-follower-servo-extension"
          ],
          "identityBoundary": "Servo serials, calibrated offsets, exact daisy-chain order, individual cable placement and loaded-voltage behavior are not frozen."
        },
        {
          "id": "am-arm200-follower-12v-power",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "Follower 12 V / 4 A / 48 W supply",
          "nodeKind": "power",
          "configurationBoundary": "Follower-only external supply selected by the pinned BOM.",
          "sourceBomItemIds": [
            "am-arm200-follower-power"
          ],
          "identityBoundary": "The BOM gives electrical headline values but does not independently freeze connector polarity, protection, regulatory variant or observed output."
        },
        {
          "id": "am-arm200-leader-controller",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "Leader Waveshare Bus Servo Controller",
          "nodeKind": "control",
          "configurationBoundary": "One Bus Servo Adapter (A) assigned to the 5 V leader arm.",
          "sourceBomItemIds": [
            "am-arm200-leader-controller",
            "am-arm200-leader-usbc"
          ],
          "identityBoundary": "Controller hardware revision, firmware, USB descriptor, cable construction and serial are not published."
        },
        {
          "id": "am-arm200-leader-servo-bus",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "Seven-servo 5 V leader bus",
          "nodeKind": "actuation",
          "configurationBoundary": "Seven STS3215 5 V 1/147 servos, IDs 1–7; responsibility-party instructions require phase 12 to reset factory multi-turn configuration to single-turn.",
          "sourceBomItemIds": [
            "am-arm200-leader-sts3215"
          ],
          "identityBoundary": "Servo serials, EEPROM state, calibrated offsets, exact daisy-chain order, cables and physical phase confirmation are not frozen."
        },
        {
          "id": "am-arm200-leader-5v-power",
          "robotRecordId": "bom-audit-am-arm200",
          "label": "Leader 5 V external supply",
          "nodeKind": "power",
          "configurationBoundary": "Leader-only external supply; the detailed BOM does not publish a current rating.",
          "sourceBomItemIds": [
            "am-arm200-leader-power"
          ],
          "identityBoundary": "Supply SKU, current rating, connector, polarity, protection, regulatory variant and observed output are not published."
        }
      ],
      "interfaceRelations": [
        {
          "id": "am-arm200-host-follower-usb",
          "robotRecordId": "bom-audit-am-arm200",
          "fromNodeId": "am-arm200-external-host",
          "toNodeId": "am-arm200-follower-controller",
          "relationType": "data-control",
          "interfaceLabel": "USB Type-C host link to follower Bus Servo Controller",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceUrl": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/am-arm200/hardware_assembly.md",
          "sourceBomItemIds": [
            "am-arm200-follower-controller",
            "am-arm200-follower-usbc"
          ],
          "evidenceText": "The pinned assembly guide requires the servo controller to be connected to a computer by USB-C for ID configuration and mounts a dedicated controller on the follower base.",
          "unresolved": [
            "Host and USB port, cable data capability, device path, controller descriptor, permissions, firmware and communication latency are not frozen.",
            "RCI has not enumerated this controller."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "am-arm200-follower-controller-servo-bus",
          "robotRecordId": "bom-audit-am-arm200",
          "fromNodeId": "am-arm200-follower-controller",
          "toNodeId": "am-arm200-follower-servo-bus",
          "relationType": "data-control",
          "interfaceLabel": "Feetech STS bus to seven follower servos, IDs 1–7; typical setup baud 1,000,000",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceUrl": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/am-arm200/hardware_assembly.md",
          "sourceBomItemIds": [
            "am-arm200-follower-controller",
            "am-arm200-follower-sts3215",
            "am-arm200-follower-sts3095",
            "am-arm200-follower-servo-extension"
          ],
          "evidenceText": "The pinned guide configures servo IDs one-by-one through the Waveshare controller, publishes a typical 1,000,000 baud setup and identifies seven follower joints; the pinned README fixes four STS3215 plus three STS3095 roles.",
          "unresolved": [
            "The guide calls 1,000,000 a typical baud, not an as-built readback; exact bus order, per-servo EEPROM, offsets, cable topology, packet errors and timing remain unverified.",
            "RCI has not scanned or moved this bus."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "am-arm200-follower-12v-bus-power",
          "robotRecordId": "bom-audit-am-arm200",
          "fromNodeId": "am-arm200-follower-12v-power",
          "toNodeId": "am-arm200-follower-servo-bus",
          "relationType": "power",
          "interfaceLabel": "12 V / 4 A / 48 W follower supply through servo controller",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceUrl": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/README.md",
          "sourceBomItemIds": [
            "am-arm200-follower-power",
            "am-arm200-follower-controller",
            "am-arm200-follower-sts3215",
            "am-arm200-follower-sts3095"
          ],
          "evidenceText": "The pinned README assigns a 12 V 4 A supply and dedicated controller to the follower, while the detailed BOM identifies 12 V STS3215/STS3095 actuator variants.",
          "unresolved": [
            "Connector dimensions/polarity, distribution layout, protection, grounding, current margin, startup transient and measured loaded voltage are not independently fixed.",
            "The 12 V branch must not be joined to the 5 V leader branch; RCI has not energized it."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "am-arm200-host-leader-usb",
          "robotRecordId": "bom-audit-am-arm200",
          "fromNodeId": "am-arm200-external-host",
          "toNodeId": "am-arm200-leader-controller",
          "relationType": "data-control",
          "interfaceLabel": "USB Type-C host link to leader Bus Servo Controller",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceUrl": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/am-arm200/hardware_assembly.md",
          "sourceBomItemIds": [
            "am-arm200-leader-controller",
            "am-arm200-leader-usbc"
          ],
          "evidenceText": "The pinned assembly guide explicitly connects the leader controller to a PC by USB-C during configuration and mounts a dedicated controller on the leader base.",
          "unresolved": [
            "The pinned hardware repository points software setup to a separate moving repository; no software commit is silently bound to this hardware snapshot.",
            "Host, device path, cable, descriptor, permissions, firmware and actual enumeration remain unverified."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "am-arm200-leader-controller-servo-bus",
          "robotRecordId": "bom-audit-am-arm200",
          "fromNodeId": "am-arm200-leader-controller",
          "toNodeId": "am-arm200-leader-servo-bus",
          "relationType": "data-control",
          "interfaceLabel": "Feetech STS bus to seven leader servos, IDs 1–7; phase 12 single-turn reset",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceUrl": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/am-arm200/hardware_assembly.md",
          "sourceBomItemIds": [
            "am-arm200-leader-controller",
            "am-arm200-leader-sts3215"
          ],
          "evidenceText": "The pinned guide publishes the leader IDs 1–7, says the 5 V 1/147 servos ship in multi-turn mode and instructs setting phase to 12 before checking states.",
          "unresolved": [
            "No per-servo readback, serial, phase/EEPROM capture, ordered cable map, calibration offsets, packet timing or state log is published for one assembled pair.",
            "RCI has not configured or scanned this bus."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "am-arm200-leader-5v-bus-power",
          "robotRecordId": "bom-audit-am-arm200",
          "fromNodeId": "am-arm200-leader-5v-power",
          "toNodeId": "am-arm200-leader-servo-bus",
          "relationType": "power",
          "interfaceLabel": "Dedicated 5 V leader supply through servo controller",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AM-ARM commit 5b03af1ef6c80595bd988e0137cf8e7c35811eb6",
          "sourceUrl": "https://github.com/liyiteng/AM-ARM/blob/5b03af1ef6c80595bd988e0137cf8e7c35811eb6/am-arm200/hardware_assembly.md",
          "sourceBomItemIds": [
            "am-arm200-leader-power",
            "am-arm200-leader-controller",
            "am-arm200-leader-sts3215"
          ],
          "evidenceText": "The pinned guide labels the leader arm 5 V and requires its 5 V supply at the controller; the selected BOM fixes seven STS3215 5 V 1/147 units.",
          "unresolved": [
            "The detailed BOM omits current rating; supply SKU, connector, polarity, protection, ground relationship, current margin and loaded voltage remain unknown.",
            "This branch must remain electrically distinct from the follower 12 V branch; RCI has not energized it."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-openamr-platform",
      "platform": "OpenAMR multipurpose mobile platform",
      "responsibilityParty": "OpenAMRobot",
      "morphology": "mobile-base",
      "platformRevisionBoundary": "Electrical/electronic component-identification table at openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff; the separately published preliminary BOM and mechanical workbook remain outside this selected 11-row identity surface.",
      "selectedBomSurface": "Components — Bill of Materials & datasheets exact-identification table",
      "bomFormat": "markdown-table",
      "declaredEntryCount": 11,
      "entryCountBoundary": "Eleven numbered electrical/electronic rows. Quantities embedded in row labels are retained; alternative batteries and three unresolved labels are not promoted to exact orderable identities.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected table is commit-addressable and dated, but it is not a numbered platform release or an as-built unit snapshot.",
      "lifecycleBoundary": "The file records label confirmations, superseded motor-ratio interpretation, corrected wheel geometry and outstanding identification tasks; those revisions remain source claims rather than RCI physical measurements.",
      "strongestPublishedEvidence": "Eleven component identities derived by the project from physical labels and datasheets, with configuration notes, unresolved status flags and cross-links to wiring, sizing and mechanical evidence.",
      "largestRebuildGap": "The selected surface excludes the full mechanical workbook and does not publish one frozen, flattened, unit-level system BOM or independent rebuild.",
      "responsibilitySourceConflict": true,
      "conflictNote": "The project records that the camera board silkscreen says MPU-6050 while the identified chip is MPU-6500; RCI retains the discrepancy as a project-published identity boundary.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "published",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "Project label-reading and measurements are responsibility-party evidence. RCI has not inspected the physical OpenAMR, and generic or unresolved rows remain generic or unresolved.",
      "sources": [
        {
          "id": "openamr-components",
          "title": "OpenAMR components BOM and datasheets",
          "url": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/manufacturing/bom/components-bom.md",
          "location": "Eleven numbered electrical/electronic identity rows and project-published configuration boundaries",
          "revision": "Commit 3f5bfde · file updated 2026-06-19"
        },
        {
          "id": "openamr-hardware",
          "title": "OpenAMR platform hardware repository",
          "url": "https://github.com/openAMRobot/openamr-platform-hw/tree/3f5bfde6608bc043752225966db80461222669ff",
          "location": "Mechanical, electrical, datasheet and manufacturing evidence under the repository boundary",
          "revision": "Commit 3f5bfde · MIT"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "openamr-platform",
      "href": "/robots/openamr-platform/",
      "morphologyLabel": "Mobile base",
      "publishedDisclosureCount": 5,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 63,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "openamr-platform-teensy40",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Microcontroller — Teensy 4.0",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "PJRC",
          "modelOrFile": "Teensy 4.0 / NXP i.MX RT1062",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Real-time motor and sensor control",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "openamr-platform-motor-driver",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Motor driver — ZBLD.C20-120L2R",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Ningbo Zhongda Leader",
          "modelOrFile": "ZBLD.C20-120L2R",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 source-table units; not an RCI-verified as-built count.",
          "role": "BLDC motor drive",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "openamr-platform-motor",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Geared BLDC motor — Z4BLD60-24GN-30S",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Ningbo Zhongda Leader",
          "modelOrFile": "Z4BLD60-24GN-30S / 4GN 25K",
          "variant": "24 V · 60 W · 25:1",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 source-table units; not an RCI-verified as-built count.",
          "role": "Differential-drive traction",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "openamr-platform-encoder",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Magnetic encoder — AS5040",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "ams OSRAM",
          "modelOrFile": "AS5040",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 source-table units; not an RCI-verified as-built count.",
          "role": "Wheel odometry feedback",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "openamr-platform-imu",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "IMU — MPU-6500",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "TDK InvenSense",
          "modelOrFile": "MPU-6500",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Base inertial sensing",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The project reports board silkscreen “MPU-6050” while identifying the installed chip as MPU-6500; RCI has not inspected the board."
          ]
        },
        {
          "id": "openamr-platform-lidar",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "LiDAR — RPLIDAR A1",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Slamtec",
          "modelOrFile": "RPLIDAR A1 / probable A1M8",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "2D ranging for navigation",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The project marks exact sticker confirmation as still pending."
          ]
        },
        {
          "id": "openamr-platform-camera",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Camera Module 3 NoIR",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Camera Module 3 NoIR / Sony IMX708",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Visual perception",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "openamr-platform-pi5",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Raspberry Pi 5",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi 5 Model B Rev 1.1",
          "variant": "8 GB",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "ROS 2 navigation and perception compute",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "openamr-platform-dc-dc",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "Generic 24 V to 5 V CC/CV buck",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "approximately 300 W / 20 A",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Low-voltage compute supply",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "The project marks the exact converter model as unread."
          ]
        },
        {
          "id": "openamr-platform-battery",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "24 V battery source",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Reference: DM12-7S",
          "variant": "Four 12 V 7 Ah lead-acid batteries in reference build",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The project permits any suitable 24 V pack; quantity four applies only to its named DM12-7S reference build and is not a universal platform quantity.",
          "role": "Main energy storage",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Chemistry and pack topology are alternatives; fuse and disconnect are identified by the project as safety gaps."
          ]
        },
        {
          "id": "openamr-platform-ac-dc",
          "robotRecordId": "bom-audit-openamr-platform",
          "sourceId": "openamr-components",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceSection": "Components — Bill of Materials & datasheets",
          "name": "AC/DC 230 V to 24 V converter",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Mains-powered 24 V source",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Brand, model and rating are marked unknown by the responsibility party."
          ]
        }
      ],
      "normalizedBomItemCount": 11,
      "manufacturerRelations": [
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 2,
          "installedItemCount": 2,
          "itemIds": [
            "openamr-platform-camera",
            "openamr-platform-pi5"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-openamr-raspberry-pi-5-rev11",
          "robotRecordId": "bom-audit-openamr-platform",
          "robotBomItemId": "openamr-platform-pi5",
          "componentId": "cmp-raspberry-pi-5-model-b-rev11",
          "componentSlug": "raspberry-pi-5-model-b-rev11",
          "componentName": "Raspberry Pi 5 Model B Rev 1.1",
          "componentOfficialModel": "Raspberry Pi 5 Model B Rev 1.1",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 Model B Rev 1.1",
          "publishedQuantity": 1,
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "identityEvidence": "The pinned OpenAMR responsibility-party component table identifies one Raspberry Pi 5 Model B Rev 1.1 and separately records the 8 GB configuration. The RCI component record preserves that revision-bounded identity while using Raspberry Pi’s official product page only for family-level specifications.",
          "quantityBoundary": "One unit is published for the selected OpenAMR source boundary. RCI did not read a physical revision code, serial number, memory marking or as-built manifest.",
          "evidenceBoundary": "This relation does not generalize to every Raspberry Pi 5 board revision or RAM option and does not prove power sufficiency, thermal behavior, software compatibility, current supply, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-openamr-teensy-40",
          "robotRecordId": "bom-audit-openamr-platform",
          "robotBomItemId": "openamr-platform-teensy40",
          "componentId": "cmp-pjrc-teensy-40",
          "componentSlug": "pjrc-teensy-40",
          "componentName": "PJRC Teensy 4.0",
          "componentOfficialModel": "Teensy 4.0",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "PJRC",
          "publishedPartNumber": "Teensy 4.0 / NXP i.MX RT1062",
          "publishedQuantity": 1,
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "identityEvidence": "The pinned OpenAMR component table identifies one Teensy 4.0 and its NXP i.MX RT1062 processor. RCI separately represents the exact PJRC board; the processor is not promoted as a second installed board.",
          "quantityBoundary": "One source-table unit is published. RCI did not inspect the board, processor marking, carrier wiring or flashed firmware.",
          "evidenceBoundary": "This is a public component-table identity relation, not proof of serial identity, firmware, electrical integration, real-time performance, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-openamr-as5040",
          "robotRecordId": "bom-audit-openamr-platform",
          "robotBomItemId": "openamr-platform-encoder",
          "componentId": "cmp-ams-osram-as5040",
          "componentSlug": "ams-osram-as5040",
          "componentName": "ams OSRAM AS5040",
          "componentOfficialModel": "AS5040",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ams OSRAM",
          "publishedPartNumber": "AS5040",
          "publishedQuantity": 2,
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "identityEvidence": "The pinned OpenAMR table identifies two AS5040 magnetic encoders. The RCI record represents the exact encoder IC while keeping magnet, PCB and mechanical stack outside that identity.",
          "quantityBoundary": "Two source-table units are published; no serials, PCB assemblies, magnet identities or calibration records were inspected.",
          "evidenceBoundary": "The crosswalk does not establish mounted accuracy, wheel-odometry performance, current supply, endorsement or an RCI physical test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-openamr-mpu-6500",
          "robotRecordId": "bom-audit-openamr-platform",
          "robotBomItemId": "openamr-platform-imu",
          "componentId": "cmp-tdk-invensense-mpu-6500",
          "componentSlug": "tdk-invensense-mpu-6500",
          "componentName": "TDK InvenSense MPU-6500",
          "componentOfficialModel": "MPU-6500",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "TDK InvenSense",
          "publishedPartNumber": "MPU-6500",
          "publishedQuantity": 1,
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "identityEvidence": "The pinned OpenAMR table names MPU-6500 as the installed chip identity. RCI preserves the same source’s conflicting MPU-6050 board-silkscreen observation instead of silently resolving it.",
          "quantityBoundary": "One source-table unit is published; no physical board, package marking, serial or calibration record was inspected.",
          "evidenceBoundary": "This relation proves the source’s exact chip assertion and exposes its board-label conflict. It does not prove the assertion physically, calibration, navigation performance, endorsement or RCI validation.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-openamr-camera-module-3-noir",
          "robotRecordId": "bom-audit-openamr-platform",
          "robotBomItemId": "openamr-platform-camera",
          "componentId": "cmp-raspberry-pi-camera-module-3-noir",
          "componentSlug": "raspberry-pi-camera-module-3-noir",
          "componentName": "Raspberry Pi Camera Module 3 NoIR",
          "componentOfficialModel": "Camera Module 3 NoIR",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Camera Module 3 NoIR / Sony IMX708",
          "publishedQuantity": 1,
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "identityEvidence": "The pinned OpenAMR table identifies one standard-field-of-view Camera Module 3 NoIR and the Sony IMX708 sensor. RCI keeps NoIR separate from IR-filtered and wide-angle variants.",
          "quantityBoundary": "One source-table unit is published; no serial, cable, focus position, calibration file or mounting transform was inspected.",
          "evidenceBoundary": "The crosswalk does not prove host compatibility, calibrated perception, infrared response, current supply, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "openamr-pi5",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "Raspberry Pi 5 Model B Rev 1.1 (8 GB)",
          "nodeKind": "compute",
          "configurationBoundary": "One confirmed Raspberry Pi 5 Model B Rev 1.1 with 8 GB RAM in the selected OpenAMR component record.",
          "sourceBomItemIds": [
            "openamr-platform-pi5"
          ],
          "identityBoundary": "The board family, revision and RAM are published; serial, storage medium, operating-system image, ROS 2 workspace and physical USB-port allocation are not frozen."
        },
        {
          "id": "openamr-teensy40",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "PJRC Teensy 4.0 real-time controller",
          "nodeKind": "control",
          "configurationBoundary": "One exact Teensy 4.0 with published motor, encoder, IMU and micro-ROS pin assignments.",
          "sourceBomItemIds": [
            "openamr-platform-teensy40"
          ],
          "identityBoundary": "The board model and pin map are published; serial, bootloader, firmware hash, calibration state and one as-built board are not bound to RCI evidence."
        },
        {
          "id": "openamr-zbld-driver-pair",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "Two ZBLD.C20-120L2R motor drivers",
          "nodeKind": "control",
          "configurationBoundary": "Two exact ZBLD.C20-120L2R drivers, one per wheel, with identical published terminal and DIP-switch configuration.",
          "sourceBomItemIds": [
            "openamr-platform-motor-driver"
          ],
          "identityBoundary": "Published model and quantity do not establish serials, PCB revisions, potentiometer calibration, fault history or installed condition."
        },
        {
          "id": "openamr-zd-motor-pair",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "Two Z4BLD60-24GN-30S geared BLDC motors",
          "nodeKind": "actuation",
          "configurationBoundary": "Two exact 24 V, 60 W Z4BLD60-24GN-30S motors with 4GN 25K gearboxes, one per wheel.",
          "sourceBomItemIds": [
            "openamr-platform-motor"
          ],
          "identityBoundary": "Model, quantity and responsibility-party nameplate observations do not establish serials, winding lots, wear state, stall-current boundary or RCI-measured output."
        },
        {
          "id": "openamr-as5040-pair",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "Two AS5040 wheel encoders",
          "nodeKind": "control",
          "configurationBoundary": "Two exact AS5040 magnetic encoders operated from the 3.3 V domain, one per wheel.",
          "sourceBomItemIds": [
            "openamr-platform-encoder"
          ],
          "identityBoundary": "Chip identity and responsibility-party wiring are published; magnet alignment, physical mounting, individual calibration and RCI signal capture are absent."
        },
        {
          "id": "openamr-mpu6500",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "MPU-6500 base IMU",
          "nodeKind": "control",
          "configurationBoundary": "One responsibility-party-identified MPU-6500 on I²C address 0x68 and the Teensy 3.3 V domain.",
          "sourceBomItemIds": [
            "openamr-platform-imu"
          ],
          "identityBoundary": "The project reports an MPU-6050/GY-521 board silkscreen conflict while identifying the installed chip as MPU-6500; RCI has not inspected the board."
        },
        {
          "id": "openamr-24v-power",
          "robotRecordId": "bom-audit-openamr-platform",
          "label": "24 V source and generic 24 V-to-5 V conversion branch",
          "nodeKind": "power",
          "configurationBoundary": "The design accepts a suitable 24 V source; its named reference uses four DM12-7S batteries and a generic approximately 300 W / 20 A buck converter.",
          "sourceBomItemIds": [
            "openamr-platform-battery",
            "openamr-platform-dc-dc"
          ],
          "identityBoundary": "Battery chemistry is configurable, converter identity is unread, and the responsibility party identifies fuse and disconnect gaps; RCI has not powered or instrumented the branch."
        }
      ],
      "interfaceRelations": [
        {
          "id": "openamr-pi5-teensy-microros-usb",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-pi5",
          "toNodeId": "openamr-teensy40",
          "relationType": "data-control",
          "interfaceLabel": "USB native serial micro-ROS link at published 115200 baud",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/wiring/wiring-pinout.md",
          "sourceBomItemIds": [
            "openamr-platform-pi5",
            "openamr-platform-teensy40"
          ],
          "evidenceText": "The pinned wiring map explicitly connects Teensy native USB to Raspberry Pi for micro-ROS and publishes 115200 baud.",
          "unresolved": [
            "USB cable identity, Pi port, USB descriptor, agent version, ROS 2 distribution, firmware hash and reconnect behavior are not frozen.",
            "RCI has not enumerated or exchanged traffic on this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "openamr-teensy-left-driver-control",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-teensy40",
          "toNodeId": "openamr-zbld-driver-pair",
          "relationType": "data-control",
          "interfaceLabel": "Left/right 3.3 V PWM plus FWD/REV and common-ground driver control",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/wiring/wiring-pinout.md",
          "sourceBomItemIds": [
            "openamr-platform-teensy40",
            "openamr-platform-motor-driver"
          ],
          "evidenceText": "The pinned terminal table maps Teensy PWM/FWD/REV pins 1/20/21 and 5/6/8 to the left and right drivers, with COM tied to Teensy ground.",
          "unresolved": [
            "Harness wire identities, gauge, connector retention, filtering, measured logic margins and individual driver calibration are not serialised.",
            "RCI has not probed these signals."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "openamr-drivers-motors-phase-hall",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-zbld-driver-pair",
          "toNodeId": "openamr-zd-motor-pair",
          "relationType": "data-control",
          "interfaceLabel": "Per-wheel U/V/W phase and Hu/Hv/Hw Hall-sensor motor harness",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/motor_control/motors-drivers.md",
          "sourceBomItemIds": [
            "openamr-platform-motor-driver",
            "openamr-platform-motor"
          ],
          "evidenceText": "The pinned motor-control document publishes one driver per wheel, 24 V motor power, U/V/W phases and Hall connections for the exact driver and motor models.",
          "unresolved": [
            "Phase order, connector pin numbering at both physical units, continuity, insulation, Hall timing, serials and stall-current behavior are not frozen.",
            "RCI has not powered either motor."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "openamr-encoders-teensy-quadrature",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-as5040-pair",
          "toNodeId": "openamr-teensy40",
          "relationType": "data-control",
          "interfaceLabel": "3.3 V quadrature A/B feedback on pins 14/15 and 11/12",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/sensors/encoders.md",
          "sourceBomItemIds": [
            "openamr-platform-encoder",
            "openamr-platform-teensy40"
          ],
          "evidenceText": "The pinned encoder and wiring documents publish two AS5040 wheel encoders, their 3.3 V supply and left/right A/B pin assignments into Teensy.",
          "unresolved": [
            "Magnet alignment, wire identities, pull configuration, edge integrity, count direction, missed-count rate and physical wheel-scale calibration are not independently captured.",
            "RCI has no raw quadrature traces."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "openamr-imu-teensy-i2c",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-mpu6500",
          "toNodeId": "openamr-teensy40",
          "relationType": "data-control",
          "interfaceLabel": "3.3 V I²C at address 0x68 on Teensy SDA18/SCL19",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/wiring/wiring-pinout.md",
          "sourceBomItemIds": [
            "openamr-platform-imu",
            "openamr-platform-teensy40"
          ],
          "evidenceText": "The pinned wiring audit identifies the MPU-6500, 3.3 V domain, address 0x68 and Teensy SDA18/SCL19 endpoints.",
          "unresolved": [
            "The MPU-6050/GY-521 board silkscreen conflict, pull-ups, bus speed, register configuration, calibration, mounting transform and raw sample behavior remain unresolved by RCI.",
            "RCI has not enumerated the device."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "openamr-power-zbld-24v",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-24v-power",
          "toNodeId": "openamr-zbld-driver-pair",
          "relationType": "power",
          "interfaceLabel": "24 V DC source to both driver V+/V− inputs",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/power_distribution/power.md",
          "sourceBomItemIds": [
            "openamr-platform-battery",
            "openamr-platform-motor-driver"
          ],
          "evidenceText": "The pinned power and wiring documentation places both driver DC inputs on the 24 V bus and documents the reference battery topology.",
          "unresolved": [
            "The project records a no-fuse/no-disconnect safety gap while other wiring prose says fused; exact as-built protection, polarity verification, wire gauge, current margin and fault interruption are therefore not frozen.",
            "RCI has not energized this bus."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "openamr-power-pi5-buck",
          "robotRecordId": "bom-audit-openamr-platform",
          "fromNodeId": "openamr-24v-power",
          "toNodeId": "openamr-pi5",
          "relationType": "power",
          "interfaceLabel": "24 V bus through generic adjustable buck converter to 5 V compute domain",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "openAMRobot/openamr-platform-hw commit 3f5bfde6608bc043752225966db80461222669ff",
          "sourceUrl": "https://github.com/openAMRobot/openamr-platform-hw/blob/3f5bfde6608bc043752225966db80461222669ff/electrical/power_distribution/power.md",
          "sourceBomItemIds": [
            "openamr-platform-battery",
            "openamr-platform-dc-dc",
            "openamr-platform-pi5"
          ],
          "evidenceText": "The pinned component and power records describe a generic 24 V-to-5 V CC/CV buck supplying the low-voltage compute branch that includes Raspberry Pi 5.",
          "unresolved": [
            "Converter model, output setting, connector, polarity, ripple, transient response, current limit, thermal margin and actual Pi input voltage are not published.",
            "RCI has not instrumented the converter."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-sesame-option-a",
      "platform": "Sesame quadruped — Wiring Option A",
      "responsibilityParty": "Sesame Robot project / Dorian Borian",
      "morphology": "quadruped",
      "platformRevisionBoundary": "Core Electronics plus Wiring Option A (S2 Mini / hand-wired harness) at sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523; Options B and C are alternatives and are not silently installed together.",
      "selectedBomSurface": "Sesame BOM: Core Electronics (Both Builds) plus Wiring Option A",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 12,
      "entryCountBoundary": "Eight shared core rows plus four Option A rows. “Buy 10 for spares” remains separate from the eight installed servos; pack and assortment rows remain purchase boundaries.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The source is commit-addressable but not tied to a numbered hardware release or one completed robot serial.",
      "lifecycleBoundary": "The project marks Distro Board V1 as phased out while supporting V2/V3 and hand-wired alternatives; this record selects only the current hand-wired Option A path.",
      "strongestPublishedEvidence": "A quantified build-specific electrical list, explicit mutually exclusive wiring options, a current/legacy board boundary, linked build guide and Apache-2.0 repository license.",
      "largestRebuildGap": "The selected twelve rows exclude fasteners, printed parts, battery rows and exact harness topology, so they are not a complete procurement or as-built package.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this record.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "Representative retailer search links do not verify exact supply. The selected Option A boundary must not be merged with the Distro Board V1/V2/V3 alternatives.",
      "sources": [
        {
          "id": "sesame-bom",
          "title": "Sesame robot bill of materials",
          "url": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/hardware/bom/README.md",
          "location": "Core electronics, three alternative wiring paths, power, fasteners and tools",
          "revision": "Commit 270864f"
        },
        {
          "id": "sesame-repository",
          "title": "Sesame robot repository",
          "url": "https://github.com/dorianborian/sesame-robot/tree/270864ff710259aa42c5a69f4b6676ee28807523",
          "location": "Build guide, printable files, PCB evidence and repository license",
          "revision": "Commit 270864f · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "sesame-option-a",
      "href": "/robots/sesame-option-a/",
      "morphologyLabel": "Quadruped",
      "publishedDisclosureCount": 5,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 63,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "sesame-option-a-mg90s",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "MG90S all-metal micro servos",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "MG90S",
          "variant": "180 degree",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Eight installed servos are published; the source separately recommends buying ten to retain two spares.",
          "role": "Hip and leg actuation",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No manufacturer, lot, voltage or torque-test boundary is selected."
          ]
        },
        {
          "id": "sesame-option-a-oled",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "0.96-inch SSD1306 I2C OLED",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "SSD1306 I2C OLED",
          "variant": "128×64",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Status display",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-usb-c",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "USB-C data/power cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "5 V / 3 A requirement",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Flashing and tethered power/data",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-rocker",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "KCD1 panel-mount rocker switch",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "KCD1",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Main power switching",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-wire22",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "22 AWG silicone wire kit",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Power and ground bus wiring",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-wire30",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "30 AWG silicone wire kit",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Signal harness wiring",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-heatshrink",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "Heat-shrink assortment",
          "itemClass": "material",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Joint insulation",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-zipties",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Core Electronics",
          "name": "Small zip ties",
          "itemClass": "fixture",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Internal harness bundling",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-s2mini",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Wiring Option A",
          "name": "Lolin/WeMos ESP32-S2 Mini",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Lolin / WeMos",
          "modelOrFile": "ESP32-S2 Mini",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Option A robot controller",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-protoboard",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Wiring Option A",
          "name": "Small protoboard",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "approximately 5×7 cm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Option A hand-wired carrier",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-headers",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Wiring Option A",
          "name": "3-pin male headers",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 source-table units; not an RCI-verified as-built count.",
          "role": "Servo breakout connectors",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "sesame-option-a-buck",
          "robotRecordId": "bom-audit-sesame-option-a",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceSection": "Wiring Option A",
          "name": "5–12 V to 5 V / 3 A buck converter",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "stable 5 V / 3 A output",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Battery-to-motor/MCU regulation",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        }
      ],
      "normalizedBomItemCount": 12,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "sesame-option-a-vs-distro-board-paths",
          "robotRecordId": "bom-audit-sesame-option-a",
          "relationType": "standard-configuration-change",
          "from": "Wiring Option A — S2 Mini / hand-wired harness",
          "to": "Wiring Option B V3/V2 or Option C V1 distro-board path",
          "effectiveBoundary": "The pinned responsibility-party BOM and wiring guide publish three alternative electronics approaches; the selected profile includes Core Electronics plus Option A only.",
          "systemImpact": "Controller, carrier/PCB, firmware state, USB/battery capability, assembly method and power limitations differ, so the three paths must not be flattened into one simultaneously installed BOM.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "sesame-bom",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "unresolved": "No RCI build compares the alternatives, and the selected record does not normalize Option B/C component rows into Option A."
        }
      ],
      "topologyNodes": [
        {
          "id": "sesame-option-a-programming-host",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "External Arduino IDE programming host",
          "nodeKind": "external-host",
          "configurationBoundary": "Computer used to flash the S2 Mini motor tester and production firmware over USB-C and observe the serial monitor.",
          "sourceBomItemIds": [
            "sesame-option-a-usb-c"
          ],
          "identityBoundary": "Host SKU, operating system, Arduino IDE version, ESP32 board package, USB controller, physical port and firmware dependency lock are not published."
        },
        {
          "id": "sesame-option-a-usbc-power-source",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "Alternative USB-C 5 V / 3 A tethered source",
          "nodeKind": "power",
          "configurationBoundary": "Option A tethered-power path requiring a USB-C data/power cable and a source capable of 5 V / 3 A.",
          "sourceBomItemIds": [
            "sesame-option-a-usb-c"
          ],
          "identityBoundary": "Source SKU, charger/host role, USB-C/PD negotiation behavior, cable e-marker, connector condition, protection and measured output are not frozen; this path is an alternative to battery power."
        },
        {
          "id": "sesame-option-a-battery-input",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "Alternative battery input boundary",
          "nodeKind": "power",
          "configurationBoundary": "Battery-powered Option A path routed through the rocker switch and buck converter; the core selected twelve-row profile does not include a battery row.",
          "sourceBomItemIds": [
            "sesame-option-a-rocker",
            "sesame-option-a-buck"
          ],
          "identityBoundary": "Battery SKU, chemistry, connector, capacity, protection, charge state and physical installation are not part of the selected Option A normalized records; the project separately recommends a Bambu Lab 7.4 V pack."
        },
        {
          "id": "sesame-option-a-switched-buck-5v-rail",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "Switched buck and hand-wired 5 V / ground rails",
          "nodeKind": "power",
          "configurationBoundary": "KCD1 switch, generic 5–12 V to stable 5 V / 3 A buck, 22 AWG power/ground buses and eight three-pin headers on the Option A protoboard.",
          "sourceBomItemIds": [
            "sesame-option-a-rocker",
            "sesame-option-a-wire22",
            "sesame-option-a-protoboard",
            "sesame-option-a-headers",
            "sesame-option-a-buck"
          ],
          "identityBoundary": "Buck model, switching topology, trim state, rail impedance, connector pinout, fuse, reverse-polarity protection, ground layout and measured load behavior are not frozen."
        },
        {
          "id": "sesame-option-a-s2mini-controller",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "Lolin/WeMos ESP32-S2 Mini controller",
          "nodeKind": "control",
          "configurationBoundary": "One variant-named ESP32-S2 Mini mounted with an optional protoboard backplane in the Option A internal frame.",
          "sourceBomItemIds": [
            "sesame-option-a-s2mini",
            "sesame-option-a-protoboard"
          ],
          "identityBoundary": "Exact vendor order code, PCB revision, serial, flash capacity, firmware hash, pin map and calibrated physical board are not bound to one unit."
        },
        {
          "id": "sesame-option-a-eight-mg90s-servos",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "Eight MG90S hip and leg servos",
          "nodeKind": "actuation",
          "configurationBoundary": "Eight 180-degree all-metal MG90S rows connected as motor positions 0–7 in the selected hand-wired build.",
          "sourceBomItemIds": [
            "sesame-option-a-mg90s",
            "sesame-option-a-headers"
          ],
          "identityBoundary": "Manufacturer, authentic/clone identity, voltage, torque/current curve, serials, horn geometry, calibration, installed condition and measured behavior are not published."
        },
        {
          "id": "sesame-option-a-oled-display",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "SSD1306 128×64 I²C OLED",
          "nodeKind": "control",
          "configurationBoundary": "One 0.96-inch SSD1306 I²C OLED mounted in the top-cover slot and branched from the S2 Mini.",
          "sourceBomItemIds": [
            "sesame-option-a-oled"
          ],
          "identityBoundary": "Module vendor, PCB revision, I²C address, pull-ups, wire assignment, firmware display driver and physical unit are not frozen."
        },
        {
          "id": "sesame-option-a-frame-harness-assembly",
          "robotRecordId": "bom-audit-sesame-option-a",
          "label": "Sesame Option A frame and hand-wired harness assembly",
          "nodeKind": "assembly",
          "configurationBoundary": "Eleven printed parts, internal wire channels, hand-wired protoboard harness, heat shrink and zip-tie bundling described by the pinned build flow.",
          "sourceBomItemIds": [
            "sesame-option-a-protoboard",
            "sesame-option-a-wire22",
            "sesame-option-a-wire30",
            "sesame-option-a-heatshrink",
            "sesame-option-a-zipties"
          ],
          "identityBoundary": "Printed files are referenced outside the selected twelve normalized electronics records; no material lot, print settings, dimensions, solder-joint map, continuity record or serialised as-built assembly is bound here."
        }
      ],
      "interfaceRelations": [
        {
          "id": "sesame-option-a-host-s2mini-usb",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-programming-host",
          "toNodeId": "sesame-option-a-s2mini-controller",
          "relationType": "data-control",
          "interfaceLabel": "USB-C flashing and serial-monitor path",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/build-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-usb-c",
            "sesame-option-a-s2mini"
          ],
          "evidenceText": "The pinned build guide instructs S2 Mini builders to connect a reliable USB-C cable, flash the motor tester in Arduino IDE, open the serial monitor and later flash production firmware.",
          "unresolved": [
            "Host and USB identities, cable data capability, board package, boot mode, firmware hashes, serial settings and successful enumeration are not frozen.",
            "RCI has not connected or flashed a physical controller."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "sesame-option-a-usbc-tethered-5v-rail",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-usbc-power-source",
          "toNodeId": "sesame-option-a-switched-buck-5v-rail",
          "relationType": "power",
          "interfaceLabel": "Alternative USB-C 5 V / 3 A tethered rail path",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/wiring-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-usb-c",
            "sesame-option-a-wire22",
            "sesame-option-a-headers"
          ],
          "evidenceText": "The pinned Option A wiring guidance states that the S2 Mini hand-wired build supports USB-C PD tethered power and that Sesame needs at least 5 V / 3 A at the rails.",
          "unresolved": [
            "The source does not publish exact USB negotiation, bypass/connection around the battery buck, rail injection point, current allocation, protection or measured transient behavior.",
            "This alternative path must not be energized together with an unverified battery source; RCI has not applied power."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "sesame-option-a-battery-switch-buck-rail",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-battery-input",
          "toNodeId": "sesame-option-a-switched-buck-5v-rail",
          "relationType": "power",
          "interfaceLabel": "Alternative battery → rocker switch → buck → 5 V rail path",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/wiring-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-rocker",
            "sesame-option-a-buck",
            "sesame-option-a-wire22"
          ],
          "evidenceText": "The pinned BOM and wiring notes require battery power to pass through the rocker switch and 5–12 V-to-5 V buck before reaching the rails.",
          "unresolved": [
            "Battery identity is outside the selected twelve records; connector, polarity, fuse, buck trim, wire lengths, state of charge and load margin are not frozen.",
            "This is an alternative to tethered USB-C power, not evidence of simultaneous dual-source operation."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "sesame-option-a-5v-rail-s2mini",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-switched-buck-5v-rail",
          "toNodeId": "sesame-option-a-s2mini-controller",
          "relationType": "power",
          "interfaceLabel": "Shared regulated 5 V controller rail",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/wiring-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-s2mini",
            "sesame-option-a-wire22",
            "sesame-option-a-buck"
          ],
          "evidenceText": "The project states that the battery buck supplies a stable 5 V for motors and MCU and describes shared hand-wired 5 V and ground rails.",
          "unresolved": [
            "Exact controller power pin, USB backfeed isolation, ground topology, voltage tolerance, brownout margin and observed current are not published.",
            "RCI has not measured the controller rail."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "sesame-option-a-5v-rail-eight-servos",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-switched-buck-5v-rail",
          "toNodeId": "sesame-option-a-eight-mg90s-servos",
          "relationType": "power",
          "interfaceLabel": "Shared 5 V / ground header rails to eight servos",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/wiring-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-mg90s",
            "sesame-option-a-headers",
            "sesame-option-a-wire22",
            "sesame-option-a-buck"
          ],
          "evidenceText": "The Option A guide instructs soldering the 5 V and ground lanes across all three-pin headers; the BOM publishes eight MG90S servos and a stable 5 V / 3 A buck requirement.",
          "unresolved": [
            "Per-servo current, simultaneous stall demand, connector polarity, rail drop, wire heating, brownout behavior and safety margin are not published or measured.",
            "The build guide warns that movement can crash on battery power; RCI has not powered or loaded the servo bank."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "sesame-option-a-s2mini-eight-servo-data",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-s2mini-controller",
          "toNodeId": "sesame-option-a-eight-mg90s-servos",
          "relationType": "data-control",
          "interfaceLabel": "Eight 30 AWG motor data leads, positions 0–7",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/wiring-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-s2mini",
            "sesame-option-a-mg90s",
            "sesame-option-a-wire30",
            "sesame-option-a-headers"
          ],
          "evidenceText": "The pinned Option A guide calls for eight equal-length 30 AWG data wires and the build guide identifies motor positions 0–7 for tester-driven alignment.",
          "unresolved": [
            "Exact ESP32 GPIO map, pulse frequency/width, wire length, connector assignment, calibration offsets, firmware hash and timing jitter are not frozen.",
            "RCI has not emitted PWM, observed motion or checked joint assignment."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "sesame-option-a-s2mini-oled-i2c",
          "robotRecordId": "bom-audit-sesame-option-a",
          "fromNodeId": "sesame-option-a-s2mini-controller",
          "toNodeId": "sesame-option-a-oled-display",
          "relationType": "data-control",
          "interfaceLabel": "Responsibility-party-described OLED I²C branch",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "dorianborian/sesame-robot commit 270864ff710259aa42c5a69f4b6676ee28807523",
          "sourceUrl": "https://github.com/dorianborian/sesame-robot/blob/270864ff710259aa42c5a69f4b6676ee28807523/docs/wiring-guide/README.md",
          "sourceBomItemIds": [
            "sesame-option-a-s2mini",
            "sesame-option-a-oled",
            "sesame-option-a-wire30"
          ],
          "evidenceText": "The pinned wiring guide says the OLED connections branch from the microcontroller, while the BOM identifies the display as an SSD1306 I²C module.",
          "unresolved": [
            "SDA/SCL pins, I²C address, voltage domain, pull-ups, cable mapping, display-driver version and functional output are not frozen.",
            "RCI has not scanned the bus or displayed content."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-toddlerbot-distro-v8",
      "platform": "ToddlerBot 2.0 — Distro Board v8",
      "responsibilityParty": "ToddlerBot project / Haochen Shi",
      "morphology": "humanoid",
      "platformRevisionBoundary": "Distro Board v8 fabrication BOM at toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e; this is an electronics-subassembly surface and is not represented as the whole humanoid BOM.",
      "selectedBomSurface": "docs/_static/bom_v8.csv fabrication BOM",
      "bomFormat": "csv",
      "declaredEntryCount": 28,
      "entryCountBoundary": "Twenty-eight CSV rows after the header. Each row may aggregate many PCB designators; RCI preserves the row quantity and does not expand it into individual board placements.",
      "commitAddressableBom": true,
      "nativeTabularBom": true,
      "versionState": "The CSV is commit-addressable and names v8, but the repository snapshot is not tied here to an as-built board serial or a complete robot release manifest.",
      "lifecycleBoundary": "The repository contains both bom.csv and bom_v8.csv; this profile selects v8 only and does not infer field upgrade compatibility from the file names.",
      "strongestPublishedEvidence": "Twenty-eight machine-readable PCB rows with designators, footprints, quantities, values and LCSC part numbers under an MIT repository license.",
      "largestRebuildGap": "A distro-board fabrication BOM does not include actuators, structure, compute, batteries, harnesses or one full ToddlerBot 2.0 as-built system.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this record.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "published",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "published",
        "supplierLinks": "not-published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "The profile intentionally exposes a subassembly-only evidence boundary. PCB designator count, procurement row count and installed robot component count are different measures.",
      "sources": [
        {
          "id": "toddlerbot-bom-v8",
          "title": "ToddlerBot Distro Board v8 BOM",
          "url": "https://github.com/hshi74/toddlerbot/blob/e337f3b177b4b53abff70b31d1695a7b66cc6d2e/docs/_static/bom_v8.csv",
          "location": "PCB designators, footprints, quantities, values and LCSC identifiers",
          "revision": "Commit e337f3b"
        },
        {
          "id": "toddlerbot-repository",
          "title": "ToddlerBot repository",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "location": "ToddlerBot 2.0 project, hardware, software and documentation evidence",
          "revision": "Commit e337f3b · MIT"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-distro-v8",
      "href": "/robots/toddlerbot-distro-v8/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 3,
      "openDisclosureCount": 3,
      "disclosureCoveragePercent": 63,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-distro-v8-c100n",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Capacitor 100 nF",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C14663",
          "variant": null,
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-c1u",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Capacitor 1 µF",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C15849",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-c22u",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Capacitor 22 µF",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C59461",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-c20p",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Capacitor 20 pF",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C1648",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-ledg",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Green LED",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C130723",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-ledb",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Blue LED",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C130724",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-led",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "LED",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C130719",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-sn74",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "SN74LVC2G241DCUR",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C10430",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-tlv755",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "TLV75533PDBVR",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C404027",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-jst3",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "JST EH 3-pin vertical connector",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C398546",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-xt30-jetson",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "XT30UPB-F Jetson power output",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C108769",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-switch-terminal",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Metz Connect switch terminal",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C3703",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-fsr1",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "FSR1 2-pin socket",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C7499322",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-fsr2",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "FSR2 2-pin socket",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C7499322",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-buck2",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Buck2 2×6 pin socket",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C42163126",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-xt30-extra1",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "XT30UPB-F extra power output 1",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C108769",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-usb-c",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "GT-USB-7010ASV USB-C receptacle",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C2988369",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-xt30-extra2",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "XT30UPB-F extra power output 2",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C108769",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-buck1",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Buck1 2×6 pin socket",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C42163126",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-r10k",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Resistor 10 kΩ",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C25804",
          "variant": null,
          "quantity": 35,
          "quantityState": "published-unit-count",
          "quantityBoundary": "35 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-r510",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Resistor 510 Ω",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C25123",
          "variant": null,
          "quantity": 9,
          "quantityState": "published-unit-count",
          "quantityBoundary": "9 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-r820",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Resistor 820 Ω",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C25135",
          "variant": null,
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-r5k1",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Resistor 5.1 kΩ",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C23186",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-r4k7",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "Resistor 4.7 kΩ",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C23162",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-txb0104",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "TXB0104RUT level translator",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C105266",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-xt30-m",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "XT30UPB-M",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C428721",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-ch348l",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "CH348L",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C2979160",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        },
        {
          "id": "toddlerbot-distro-v8-crystal",
          "robotRecordId": "bom-audit-toddlerbot-distro-v8",
          "sourceId": "toddlerbot-bom-v8",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Distro Board v8 fabrication BOM",
          "name": "8 MHz crystal",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "LCSC-listed",
          "modelOrFile": "C2682774",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 PCB placements are published across the row's designators; this is not a robot-level unit count.",
          "role": "Distro Board v8 PCB population",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No as-built PCB serial, assembly-lot record or full-robot manifest is bound to this fabrication row."
          ]
        }
      ],
      "normalizedBomItemCount": 28,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [],
      "interfaceRelations": []
    },
    {
      "id": "bom-audit-rebot-b601-power",
      "platform": "reBot DevArm B601 DM — power-supply assembly",
      "responsibilityParty": "Seeed Studio reBot DevArm project",
      "morphology": "desktop-arm",
      "platformRevisionBoundary": "Power-supply Consumables BOM and Printed Parts BOM inside hardware/reBot_B601_DM/readme.md at commit a0c709638a341d6b12b005f22f5592c4b1579f56; the broader arm mechanics remain a linked but separate surface.",
      "selectedBomSurface": "reBot B601 DM power-supply Consumables BOM plus Printed Parts BOM",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 13,
      "entryCountBoundary": "Ten consumable/purchased rows plus three printed enclosure rows. This is a subsystem list, not the entire arm BOM; assembly-step tables are excluded from the item count.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected Markdown is commit-addressable but not tied to a numbered arm release, exact shipped configuration or power-supply serial.",
      "lifecycleBoundary": "The source says the arm ships without a power supply by default and presents a user-procured Mean Well-based solution; RCI does not treat that optional assembly as factory-included hardware.",
      "strongestPublishedEvidence": "A quantified regional power-supply list, named Mean Well model, connector and wiring specifications, three linked STEP enclosure files, print parameters and illustrated assembly sequence.",
      "largestRebuildGap": "The subsystem is not the whole robot, user crimping remains required, electrical protection verification is absent, and no physical RCI safety or load test exists.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this subsystem record.",
      "disclosures": {
        "exactPlatformRevision": "partial",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "not-applicable",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "This record is deliberately labelled as a power subsystem. It does not establish electrical code compliance, safe user wiring, arm compatibility across revisions or a complete reBot DevArm build.",
      "sources": [
        {
          "id": "rebot-b601-dm-readme",
          "title": "reBot DevArm B601 DM hardware specification",
          "url": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "location": "Power-supply BOMs, printable enclosure files and assembly sequence",
          "revision": "Commit a0c7096"
        },
        {
          "id": "rebot-repository",
          "title": "reBot DevArm repository",
          "url": "https://github.com/Seeed-Projects/reBot-DevArm/tree/a0c709638a341d6b12b005f22f5592c4b1579f56",
          "location": "Hardware specification, production files and repository license",
          "revision": "Commit a0c7096 · CERN-OHL-W-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "rebot-b601-power-supply",
      "href": "/robots/rebot-b601-power-supply/",
      "morphologyLabel": "Desktop arm",
      "publishedDisclosureCount": 5,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 58,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "rebot-b601-power-psu",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "Mean Well LRS-350-24 power supply",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "Mean Well",
          "modelOrFile": "LRS-350-24",
          "variant": "24 V / 14.6 A",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Arm external DC power",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-power-cord",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "US-standard AC power cord",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Mains input cable",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Regional plug and compliance boundary is US-specific in the selected row."
          ]
        },
        {
          "id": "rebot-b601-power-xt60-output",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "XT60E fixed female output assembly",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT60E female + lug / 10 cm / 4 mm lug hole",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "DC output port",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-ac-wire",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "1.5 mm² AC wiring",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "red, blue and yellow · 10 cm",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 source-table units; not an RCI-verified as-built count.",
          "role": "Internal mains wiring",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "User crimping is required and pre-crimped leads are not included."
          ]
        },
        {
          "id": "rebot-b601-power-iec-inlet",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "3-in-1 IEC inlet socket",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "quick-connect red switch / dual nuts",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Switched fused mains inlet",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-xt30-xt60",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "XT30-to-XT60 adapter cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "XT30U female to XT60 male",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Power adapter harness",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-m4x6",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "M4×6 stainless countersunk Phillips screw",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M4×6",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 source-table units; not an RCI-verified as-built count.",
          "role": "Power-enclosure fastening",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-m3x8-csk",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "M3×8 stainless countersunk Phillips screw",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×8",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 source-table units; not an RCI-verified as-built count.",
          "role": "Output-port fastening",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-m3x8-pan",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "M3×8 stainless pan-head Phillips screw",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×8",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 source-table units; not an RCI-verified as-built count.",
          "role": "IEC-inlet fastening",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-m3-nut",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Consumables BOM",
          "name": "M3×2.5 hex nut",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×2.5",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 source-table units; not an RCI-verified as-built count.",
          "role": "Power-enclosure fastening",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-front-cover",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Printed Parts BOM",
          "name": "Front Cover",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "DM-power-Top Cover.stp",
          "variant": "PLA · 0.4 mm nozzle · 0.2 mm layer · 30% infill",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Power-supply front enclosure",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-rear-cover",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Printed Parts BOM",
          "name": "Rear Cover",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "DM-power-Bottom Cover.stp",
          "variant": "PLA · 0.4 mm nozzle · 0.2 mm layer · 30% infill",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Power-supply rear enclosure",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        },
        {
          "id": "rebot-b601-power-slider",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "sourceId": "rebot-b601-dm-readme",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "Printed Parts BOM",
          "name": "Front Cover Slider",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "DM-power-Top Cover-Sliding Cover.stp",
          "variant": "PLA · 0.4 mm nozzle · 0.2 mm layer · 30% infill",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 source-table unit; not an RCI-verified as-built count.",
          "role": "Power-supply service cover",
          "procurementBoundary": "RCI preserves the responsibility-party row identity and quantity without republishing retailer content, asserting current availability or inferring an unlisted substitute.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent physical rebuild confirms this item in one unit."
          ]
        }
      ],
      "normalizedBomItemCount": 13,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "rebot-b601-power-regional-mains-cord",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "label": "Regional AC cord boundary",
          "nodeKind": "power",
          "configurationBoundary": "The selected DM power subsystem publishes one US-standard AC cord while requiring a locally compliant three-pin plug.",
          "sourceBomItemIds": [
            "rebot-b601-power-power-cord"
          ],
          "identityBoundary": "Cord manufacturer, certifications, conductor size, fuse and suitability outside the cited region are not established."
        },
        {
          "id": "rebot-b601-power-switched-iec-inlet",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "label": "Switched 3-in-1 IEC inlet and AC wiring",
          "nodeKind": "power",
          "configurationBoundary": "One quick-connect 3-in-1 IEC inlet plus three 10 cm 1.5 mm² red/blue/yellow conductors in the selected subsystem table.",
          "sourceBomItemIds": [
            "rebot-b601-power-iec-inlet",
            "rebot-b601-power-ac-wire"
          ],
          "identityBoundary": "Exact inlet model, fuse rating, terminal type, conductor colour meaning, crimp quality, earth continuity, insulation and code compliance are not verified."
        },
        {
          "id": "rebot-b601-power-lrs35024",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "label": "Mean Well LRS-350-24 conversion stage",
          "nodeKind": "power",
          "configurationBoundary": "One LRS-350-24, responsibility-party-labelled 24 V / 14.6 A, inside the optional DM supply assembly.",
          "sourceBomItemIds": [
            "rebot-b601-power-psu"
          ],
          "identityBoundary": "Serial, production revision, input selection, output trim, derating, thermal environment, protection trip behavior and measured output are not bound to one unit."
        },
        {
          "id": "rebot-b601-power-xt60-output",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "label": "XT60E fixed-female DC output assembly",
          "nodeKind": "power",
          "configurationBoundary": "One XT60E fixed female plus 10 cm lug pigtail forms the enclosure DC output.",
          "sourceBomItemIds": [
            "rebot-b601-power-xt60-output"
          ],
          "identityBoundary": "Connector brand, polarity inspection, crimp/solder process, wire gauge, current acceptance and strain relief are not verified."
        },
        {
          "id": "rebot-b601-power-xt30-adapter-arm-boundary",
          "robotRecordId": "bom-audit-rebot-b601-power",
          "label": "XT30U-female to XT60-male arm adapter boundary",
          "nodeKind": "power",
          "configurationBoundary": "One adapter connects the supply-side XT60 output surface toward the arm-side XT30 input boundary.",
          "sourceBomItemIds": [
            "rebot-b601-power-xt30-xt60"
          ],
          "identityBoundary": "Polarity, connector gender at every mating surface, wire gauge, current rating, physical routing and arm revision compatibility are not verified."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-rebot-b601-power",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-power-cord-iec",
          "fromNodeId": "rebot-b601-power-regional-mains-cord",
          "toNodeId": "rebot-b601-power-switched-iec-inlet",
          "relationType": "power",
          "interfaceLabel": "Regional three-conductor AC cord into switched IEC inlet",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-power-power-cord",
            "rebot-b601-power-iec-inlet"
          ],
          "evidenceText": "The selected consumables table and assembly sequence place the AC cord at the 3-in-1 IEC inlet of the optional enclosure.",
          "unresolved": [
            "Regional plug/fuse requirements, inlet model, conductor assignment, earth continuity, insulation, strain relief and code acceptance are not verified.",
            "RCI has not connected this assembly to mains."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-power",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-power-iec-lrs35024",
          "fromNodeId": "rebot-b601-power-switched-iec-inlet",
          "toNodeId": "rebot-b601-power-lrs35024",
          "relationType": "power",
          "interfaceLabel": "Switched AC inlet through three user-crimped conductors to LRS-350-24",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-power-iec-inlet",
            "rebot-b601-power-ac-wire",
            "rebot-b601-power-psu"
          ],
          "evidenceText": "The official assembly steps direct the builder to wire the IEC inlet and supply according to the published sequence using the listed AC conductors.",
          "unresolved": [
            "Terminal map, input-voltage selection, fuse, lug/crimp process, torque, earth bonding, creepage, insulation and electrical inspection records are not frozen.",
            "RCI has not assembled or energized the mains side."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-power",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-power-lrs35024-xt60",
          "fromNodeId": "rebot-b601-power-lrs35024",
          "toNodeId": "rebot-b601-power-xt60-output",
          "relationType": "power",
          "interfaceLabel": "Nominal 24 V DC output to fixed XT60E female assembly",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-power-psu",
            "rebot-b601-power-xt60-output"
          ],
          "evidenceText": "The subsystem BOM and assembly sequence identify the LRS-350-24 as the conversion stage and install the XT60 output in the front enclosure.",
          "unresolved": [
            "DC polarity, output trim, wire gauge, crimp/solder method, terminal torque, current acceptance, fuse and measured output under load are not published or verified.",
            "RCI has not measured this path."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-power",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-power-xt60-xt30-adapter",
          "fromNodeId": "rebot-b601-power-xt60-output",
          "toNodeId": "rebot-b601-power-xt30-adapter-arm-boundary",
          "relationType": "power",
          "interfaceLabel": "XT60 enclosure output through XT30U-female-to-XT60-male adapter toward arm input",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-power-xt60-output",
            "rebot-b601-power-xt30-xt60"
          ],
          "evidenceText": "The fixed consumables table publishes one XT60E output assembly and one XT30U-female-to-XT60-male adapter cable for the optional supply path.",
          "unresolved": [
            "The full mating sequence, polarity, wire gauge, connector current rating, strain relief, arm-side socket revision and load behavior are not physically verified.",
            "RCI has not connected the supply to an arm."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-barkour-vb",
      "platform": "Barkour Robot vB",
      "responsibilityParty": "Google DeepMind",
      "morphology": "quadruped",
      "platformRevisionBoundary": "The source-declared vB robot and “No. of Robots: 1” BOM at barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b; older v0 assets are explicitly outside this profile.",
      "selectedBomSurface": "hardware/barkour_robot_bill_of_materials.csv",
      "bomFormat": "csv",
      "declaredEntryCount": 196,
      "entryCountBoundary": "One hundred ninety-six numbered rows. Section labels and the two header rows are excluded; rows 148 and 167 have blank required quantities and remain unresolved.",
      "commitAddressableBom": true,
      "nativeTabularBom": true,
      "versionState": "The README identifies the current release as vB and the BOM is commit-addressable, but no unit serial or procurement receipt is bound to the selected CSV.",
      "lifecycleBoundary": "The repository separates vB from older v0 hardware; this record does not transfer v0 evidence, dimensions or compatibility claims into vB.",
      "strongestPublishedEvidence": "A 196-row full-robot CSV with a one-robot quantity boundary, part types, specifications, manufacturers, product numbers, sources and assembly-linked hardware/firmware assets.",
      "largestRebuildGap": "Two quantities are blank, custom-order identities remain project labels, and no RCI physical build, incoming inspection, electrical checkout or serialised as-built manifest exists.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No selected numerical conflict was found; two blank quantities are treated as missing evidence rather than contradictory values.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "published",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "published",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes the factual row boundary and omits live source links. Inclusion does not reproduce Google DeepMind engineering endorsement or establish that a physical unit matches the list.",
      "sources": [
        {
          "id": "barkour-robot-bom",
          "title": "Barkour Robot bill of materials",
          "url": "https://github.com/google-deepmind/barkour_robot/blob/e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b/hardware/barkour_robot_bill_of_materials.csv",
          "location": "Full vB robot item rows, quantities, types, manufacturers, part numbers and notes",
          "revision": "Commit e7c0f6f · 196 numbered rows"
        },
        {
          "id": "barkour-repository",
          "title": "Barkour Robot repository",
          "url": "https://github.com/google-deepmind/barkour_robot/tree/e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "location": "vB identity, older-version boundary, CAD, electronics, firmware and assembly material",
          "revision": "Commit e7c0f6f · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "barkour-vb",
      "href": "/robots/barkour-vb/",
      "morphologyLabel": "Quadruped",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "barkour-1",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "AK80-9 Motors",
          "itemClass": "actuation",
          "identityState": "generic-description",
          "manufacturer": "TMotor",
          "modelOrFile": null,
          "variant": "48V, 9Nm, 390RPM",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-2",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Gebru",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-3",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Cortes",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-4",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Ada",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-5",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Heat Sinks",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-6",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Ada Separator",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Acetal Copolymer (POM-C)",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-7",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Other",
          "name": "Thermal Pad",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "DigiKey",
          "modelOrFile": "5595S-210MMX300MM",
          "variant": "Silicone Elastomer, 2mm thickness",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Other item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-8",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Other",
          "name": "Thermal Paste",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "1688N12",
          "variant": "0.864 w/m-k",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Other item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-9",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Hip Bracket",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-10",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Knee Bracket (Left)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-11",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Knee Bracket (Right)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-12",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Abduction HardStop",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-13",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Hip HardStop",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-14",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Cleats",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Stainless Steel 17-4 PH",
          "quantity": 48,
          "quantityState": "published-unit-count",
          "quantityBoundary": "48 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-15",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Hip Cover",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-16",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Hip Cover Clamps",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-17",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Knee Cable Cover Top",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-18",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Knee Cable Cover Bottom",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-19",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Thrust Bushing",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "PTFE",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-20",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Wrap-Around Sleeving",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "1459T818",
          "variant": "1/2\" ID, 10ft cut to length",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-21",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Hip-Power-Distro",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-22",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Fei-Fei_to_A+H_RE",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-23",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Fei-Fei_to_A+H_FR",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-24",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "NUC_ECAT_TORSO",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-25",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "A2H_ECAT",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-26",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "H2K_ECAT",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-27",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "K2H_COVER_ECAT",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-28",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Hip-Return-SS-Ecat",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-29",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Hip_Return_OS_ECAT",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-30",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Hip_Return_to_Rus_STO_TORSO",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-31",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Hip_Return_To_RUS_STO_DFB",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-32",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Inner Upper Leg (Left)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-33",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Outer Upper Leg (Left)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-34",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Inner Upper Leg (Right)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-35",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Outer Upper Leg (Right)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-36",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Crank (Left)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-37",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Crank (Right)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-38",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Linkage",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Aluminum 7075",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-39",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Knee Half Pin Clearance",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Stainless Steel 17-4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-40",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Knee Half Pin Tapped",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Stainless Steel 17-4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-41",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Linkage Half Pin Clearance",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Stainless Steel 17-4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-42",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Linkage Half Pin Tapped",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Stainless Steel 17-4",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-43",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Lower Leg",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "PEEK (Polyether Ether Ketone)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-44",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Leg Bumper",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Silicone Rubber",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-45",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Knee Bumper",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Silicone Rubber",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-46",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Foot",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Fluoroelastomer (FKM)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-47",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Flanged Ultra-Thin Ball Bearing",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "4390N122",
          "variant": "Open, 12 mm ID, 21mm OD, 5mm wide",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-48",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Stainless Steel Ball Bearing",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "7804K112",
          "variant": "6mm ID, 12mm OD, 4mm wide",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-49",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "DFB",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-50",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Antenna Panel",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-51",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "USB Panel",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-52",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Battery Holder",
          "itemClass": "power",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-53",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Anode/Cathode Electrodes",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Copper C101, Nickel plating",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-54",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "U-Shaped Electrode",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Copper C101, Nickel plating",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-55",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Rus HeatSink",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Copper C101, Nickel plating",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-56",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "RUS",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-57",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Hopper",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-58",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Remote E-stop Transceiver Module",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Digi",
          "modelOrFile": "XB3-24Z8UM",
          "variant": "RF TXRX 802.15.4 U.FL SMD, 2.4GHz",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-59",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Hamilton",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-60",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "NUC RAM",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Kingston Technologies",
          "modelOrFile": "‎KF432S20IBK2/64",
          "variant": "RAM Kingston FURY 64GB DDR4 3200MHz",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-61",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "NUC SSD",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Kingston Technologies",
          "modelOrFile": "‎SKC3000D/2048G",
          "variant": "2048G NVMe M.2 SSD",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-62",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "NUC WiFi Card",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "NICGIGA",
          "modelOrFile": "AX201",
          "variant": "WiFi 6, 2400 Mbps, BT 5.2",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-63",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Ethernet Adapter",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "TP-Link",
          "modelOrFile": "UE306",
          "variant": "USB 3.0 male A to RJ45 female, 1000 Mbps",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-64",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Intel NUC 11 Intel Core i7 4.4 GHz",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Intel",
          "modelOrFile": "BNUC11TNBV70000",
          "variant": "Intel NUC 11 Intel Core i7 4.4 GHz",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-65",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "IMU",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "MicroStrain",
          "modelOrFile": "3DM-CV7-AHRS",
          "variant": "UART, USB",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-66",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "WiFi Antenna",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Abracon LLC",
          "modelOrFile": "PRO-EX-285",
          "variant": "RF ANT 2.4Ghz/5.5Ghz",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-67",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Cable Assembly Coaxial SMA to IPEX MHF4",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Adam Tech",
          "modelOrFile": "CA-DKCA1-152L0-AJI5",
          "variant": "152.00mm",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-68",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "On-robot E-stop Antenna",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "OTS (OTHER)",
          "modelOrFile": "PRO-EX-296",
          "variant": "RF ANT 2.4Ghz",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-69",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "DeWalt DCB546(606) Battery",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "DeWalt",
          "modelOrFile": "DCB606",
          "variant": "6AH, 60V",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-70",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "DeWalt Battery Handles",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "ULINE",
          "modelOrFile": "S-6782",
          "variant": "1 x 17\",tensile strength > 2.5lbs",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-71",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "RGB Fan",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "WINSINN",
          "modelOrFile": "RGBFAN301024VH",
          "variant": "40mm, 24V",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-72",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "2POS molex connector",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Molex",
          "modelOrFile": "1053071202",
          "variant": "Receptable, 2.5mm nano fit",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-73",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "nano-fit crimp",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Molex",
          "modelOrFile": "1053001200",
          "variant": "24-26AWG, female",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-74",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "M12 Ethernet Cable (Internal)",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1440591",
          "variant": "See cable drawing (34_Internal_Ethernet_Access)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-75",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Pheonix Contact M12 Ethernet Cable (External)",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": "PC",
          "modelOrFile": "1080737",
          "variant": "10m",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-76",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "USB C to C Panel Mount Cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-77",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "USB A to C Panel Mount Cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-78",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "NUC to RUS Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": "Mouser",
          "modelOrFile": "2147552041",
          "variant": "MICRO-FIT3.0 R-R 4 CIRCUIT 150MM",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-79",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "NUC Internal USB for IMU",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Gorite",
          "modelOrFile": "INTL-4P4P-6IN",
          "variant": "1.25mm 1x4 Pin each side",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-80",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Rus_Power_In",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-81",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "STO Switch",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-82",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Power Switch",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-83",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "NUC_ECAT_DFB",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-84",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Rus_to_Hopper",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-85",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "Rus_to_Fei-Fei",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-86",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Machined",
          "name": "Combined Face plate",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Anodized Aluminum 7075",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Machined item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-87",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Chassis (Torso)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-88",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Handle",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-89",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Camera Mount",
          "itemClass": "sensor",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-90",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Abduction Grommet Top",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-91",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Abduction Grommet Bottom",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-92",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Padding (FR/RL)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Silicone Rubber",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-93",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Padding (FL/RR)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Silicone Rubber",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-94",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Holberton",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-95",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Fei-Fei",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-96",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Narrow-Grip Locking Quick-Release Pin",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "93871A110",
          "variant": "6mm Diameter, 25mm Usable Length",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-97",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "WSTO Cover Base",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-98",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "WSTO Cover Lid",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-99",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Grace",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-100",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Remote E-stop Portable Power Bank",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "TNTOR",
          "modelOrFile": "WT-H369",
          "variant": "Input: 5V / 2.4A, output: 5V / 2.4A",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-101",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Remote E-stop Power Bank Cable",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": "Xiwai",
          "modelOrFile": "UC-096-UP-0.13M-XY",
          "variant": "USB A 2.0 to USB C Up Angled, 13cm, flat slim",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-102",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Remote E-stop Antenna",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Digi",
          "modelOrFile": "A24-HABUF-P5I-ND",
          "variant": "2.4GHz Whip, Straight RF. Panel Mount",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-103",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Remote E-stop Button",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "IDEC",
          "modelOrFile": "XA1E-BV404-R",
          "variant": "SW ESTOP 3A 125V 40mm Mushrom",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-104",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "XBox Controller",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Microsoft",
          "modelOrFile": "QAU-00021",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-105",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Mataric Debug Board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-106",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "J-Link Pro (cables included)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Segger",
          "modelOrFile": "8.12.00",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-107",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Samtec 20 Position Cable Assembly",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Samtec Inc.",
          "modelOrFile": "SFSD-10-28-G-10.00-D-NDX",
          "variant": "Socket to Socket, 1.27mm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-108",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Head (Real Sense Camera Cover)",
          "itemClass": "sensor",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-109",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Neck",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "HP PA 11 (nylon)",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-110",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Real Sense Depth Camera D435i",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Intel",
          "modelOrFile": "82635D435IDK5P",
          "variant": "90 fps, RGB",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-111",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "USB C to C for Realsense Camera",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-112",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "OAK-FFC Platform (Luxonis Board)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Luxonis",
          "modelOrFile": "OAK-FFC 4P",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-113",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "OAK-FFC Camera Module",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Luxonis",
          "modelOrFile": "OAK-FFC-OV9782-M12",
          "variant": "OV9782, 1280 x 800 at 120 FPS",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-114",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "OAK Lens",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ArduCam",
          "modelOrFile": "M23272M14 (LN056)",
          "variant": "1/2.3″,  2.72 mm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-115",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "OAK FFC Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": "Luxonis",
          "modelOrFile": "OAK-FFC-UC921-3",
          "variant": "25cm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-116",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Jackson",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "see schematic",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-117",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Neck Base",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Markforged Continous Fiberglass or Carbon",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-118",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Neck Base Cover",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Markforged Continous Fiberglass or Carbon",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-119",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Bracket Stop Neck Pitch",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 11 0R 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-120",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Neck Structure",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Markforged Continous Fiberglass or Carbon",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-121",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Spring Mandrel",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 11 0R 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-122",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Head Structure",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Markforged Continous Fiberglass or Carbon",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-123",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Camera Bracket",
          "itemClass": "sensor",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "Markforged Continous Fiberglass or Carbon",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-124",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Spacer Washer",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 11 0R 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-125",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Jaw Upper Structure",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 11 0R 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-126",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Jaw Lower Structure",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 11 0R 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-127",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Neck (Right)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-128",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Neck (Left)",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-129",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Head",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-130",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Jaw Lower Outer",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-131",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / 3D Printed",
          "name": "Bracket Stop Neck Pitch Upper",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "SLS PA 12",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "3D Printed item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-132",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Flexible light pipe RGB",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Bivar Inc.",
          "modelOrFile": "SZ1-6.00-RGB-F4PD",
          "variant": "Cut length to 3\" from connector end",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-133",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "OAK-FFC Platform (Luxonis Board)",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Luxonis",
          "modelOrFile": "A00470",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-134",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "OAK-FFC Camera Module",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": "Luxonis",
          "modelOrFile": "OAK-FFC-OV9782-M12",
          "variant": "OV9782, 1280 x 800 at 120 FPS",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-135",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "OAK Lens",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ArduCam",
          "modelOrFile": "M23272M14 (LN056)",
          "variant": "1/2.3″,  2.72 mm",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-136",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "OAK FFC Cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": "Luxonis",
          "modelOrFile": "OAK-FFC-UC921-3",
          "variant": "25cm",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-137",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Electronics",
          "name": "Dynamixel XH430-W350-T",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "Robotis",
          "modelOrFile": "XH430-W350-T",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Electronics item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-138",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Horn for XH430-W350-T",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "Robotis",
          "modelOrFile": "EPX430-BR101",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-139",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Idler Bearing for XH430-W350-T",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "Robotis",
          "modelOrFile": "HN12-I101",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-140",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Brass Screw-to-Expand Inserts for Plastic",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "94510A030",
          "variant": "M3 x 0.5 mm Thread, 4.8 mm Installed Length",
          "quantity": 11,
          "quantityState": "published-unit-count",
          "quantityBoundary": "11 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-141",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Brass Tapered Heat-Set Inserts for Plastic",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "94180A333",
          "variant": "M3 x 0.5 mm Thread, 6.4 mm Installed Length",
          "quantity": 25,
          "quantityState": "published-unit-count",
          "quantityBoundary": "25 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-142",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Shims (Head)",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "90214A441",
          "variant": "20MM ID, 28MM OD",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-143",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Oversized washer M2.5",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91100A110",
          "variant": "M2.5, 0.7-0.9 Thick, 2.7mm ID, 8mm OD",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-144",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Wave Disc Spring (HEAD)",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "9714K18",
          "variant": "0.012\" Thick, 0.787\" ID, 1.094\" OD",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-145",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Torsion Spring",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "Century Spring",
          "modelOrFile": "TO-5188L",
          "variant": "0.68\" Length, 2\" Leg Length, 0.659\" ID,",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-146",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Jumper Lead Socket to Socket",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "Molex",
          "modelOrFile": "2196761123",
          "variant": "MINI SPOX 2.5 F-F 225MM 22 AWG B",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-147",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "3 Rectangular Connectors",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "JST Sales America Inc.",
          "modelOrFile": "EHR-3",
          "variant": "CONN RCPT HSG 3POS 2.50mm",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-148",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Socket Contact Crimp",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "JST Sales America Inc.",
          "modelOrFile": "SEH-001T-P0.6",
          "variant": "CONN SOCKET 22-30AWG CRIMP TIN",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected responsibility-party CSV leaves Total Quantity Required blank for this row.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Required quantity is blank in the official CSV.",
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-149",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Lockring",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "Basler Inc.",
          "modelOrFile": "2000035198",
          "variant": "M12X0.5",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-150",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Wiring",
          "name": "USB A to C for Oak Board",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": "See cable drawing",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Wiring item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-151",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Other",
          "name": "Adhesive-Back Foam Sheet",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "8613K11",
          "variant": "1/8\" Thick",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Other item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-152",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Other",
          "name": "Ziptie",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "Thomas & Betts",
          "modelOrFile": "TY23MX",
          "variant": "92mmx2.3mm",
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Other item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-153",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Thread-Forming Screws T6 Torx Drive",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "96817A312",
          "variant": "M2 x 6 mm Long",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-154",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Thread-Forming Screws T8 Torx Drive",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "96817A317",
          "variant": "M2.5 x 6 mm Long",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-155",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91263A411",
          "variant": "M2 x 0.40 mm Thread Size, 4 mm Long",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-156",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Steel T6 Torx FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "90236A107",
          "variant": "M2 x 0.4 mm Thread Size, 12 mm Long",
          "quantity": 36,
          "quantityState": "published-unit-count",
          "quantityBoundary": "36 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-157",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91263A421",
          "variant": "M2.5 x 0.45 mm Thread Size, 5 mm Long",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-158",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91263A823",
          "variant": "M3 x 0.5 mm Thread, 8 mm Long",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-159",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91294A130",
          "variant": "M3 x 0.50 mm Thread, 10 mm Long",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-160",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91294A132",
          "variant": "M3 x 0.50 mm Thread, 12 mm Long",
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-161",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91294A134",
          "variant": "M3 x 0.50 mm Thread, 16 mm Long",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-162",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91294A137",
          "variant": "M3 x 0.50 mm Thread, 22 mm Long",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-163",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91294A219",
          "variant": "M5 x 0.80 mm Thread, 40 mm Long",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-164",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "90128A177",
          "variant": "M2 x 0.4 mm Thread, 5 mm Long",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-165",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy Steel Hex DriveSHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "90128A178",
          "variant": "M2 x 0.4 mm Thread, 6 mm Long",
          "quantity": 20,
          "quantityState": "published-unit-count",
          "quantityBoundary": "20 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-166",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy  Hex Drive Steel SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "90128A179",
          "variant": "M2 x 0.4 mm Thread, 8 mm Long",
          "quantity": 15,
          "quantityState": "published-unit-count",
          "quantityBoundary": "15 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-167",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Alloy Hex Drive Steel SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "90128A216",
          "variant": "M4 x 0.7 mm Thread, 20 mm Long",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected responsibility-party CSV leaves Total Quantity Required blank for this row.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "Required quantity is blank in the official CSV.",
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-168",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Hex Drive Steel SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A100",
          "variant": "M2.5 x 0.45 mm Thread, 5 mm Long",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-169",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy  Hex Drive Steel SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A104",
          "variant": "M2.5 x 0.45 mm Thread, 12 mm Long",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-170",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel  Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A106",
          "variant": "M2.5 x 0.45 mm Thread, 16 mm Long",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-171",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A012",
          "variant": "M2 x 0.4 mm Thread, 5 mm Long",
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-172",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive  SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A047",
          "variant": "M2 x 0.4 mm Thread, 16 mm Long",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-173",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A111",
          "variant": "M3 x 0.5 mm Thread, 6 mm Long",
          "quantity": 148,
          "quantityState": "published-unit-count",
          "quantityBoundary": "148 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-174",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Hex Drive Steel SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A113",
          "variant": "M3 x 0.5 mm Thread, 8 mm Long",
          "quantity": 43,
          "quantityState": "published-unit-count",
          "quantityBoundary": "43 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-175",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A115",
          "variant": "M3 x 0.5 mm Thread, 10 mm Long",
          "quantity": 76,
          "quantityState": "published-unit-count",
          "quantityBoundary": "76 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-176",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A117",
          "variant": "M3 x 0.5 mm Thread, 12 mm Long",
          "quantity": 81,
          "quantityState": "published-unit-count",
          "quantityBoundary": "81 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-177",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A123",
          "variant": "M3 x 0.5 mm Thread, 20 mm Long",
          "quantity": 19,
          "quantityState": "published-unit-count",
          "quantityBoundary": "19 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-178",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A140",
          "variant": "M4 x 0.7 mm Thread, 8 mm Long",
          "quantity": 78,
          "quantityState": "published-unit-count",
          "quantityBoundary": "78 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-179",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black Oxide Alloy Steel Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91290A154",
          "variant": "M4 x 0.7 mm Thread, 16 mm Long",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-180",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide 18-8 Stainless Steel Hex Drive BHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "97763A425",
          "variant": "M4 x 0.70 mm Thread, 16 mm Long",
          "quantity": 16,
          "quantityState": "published-unit-count",
          "quantityBoundary": "16 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-181",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive BHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91239A152",
          "variant": "M4 x 0.70 mm Thread, 20 mm Long",
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-182",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Nylon PH Phillips Screws",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "92492A705",
          "variant": "M2 x 0.40 mm Thread, 10mm Long",
          "quantity": 36,
          "quantityState": "published-unit-count",
          "quantityBoundary": "36 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-183",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Nylon PH Phillips Screws",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "92492A719",
          "variant": "M3 x 0.50 mm Thread, 12mm",
          "quantity": 36,
          "quantityState": "published-unit-count",
          "quantityBoundary": "36 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-184",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Nylon Plastic Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "93640A142",
          "variant": "M3 x 0.5 mm Thread, 6 mm Long",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-185",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Blue-Dyed Zinc-Plated Alloy Steel  Hex Drive SHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91502A103",
          "variant": "M3 x 0.5 mm Thread, 8 mm Long",
          "quantity": 21,
          "quantityState": "published-unit-count",
          "quantityBoundary": "21 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-186",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide Alloy Steel Hex Drive FHCS",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91294A196",
          "variant": "M4 x 0.70 mm Thread, 20 mm Long",
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-187",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "18-8 Stainless Steel Nylon-Insert Locknut",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "93625A101",
          "variant": "M2 x 0.4 mm Thread",
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-188",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Black-Oxide 18-8 Stainless Steel Nylon-Insert Locknut",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "93625A223",
          "variant": "M3 x 0.5 Thread",
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-189",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Steel Washer",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "98688A110",
          "variant": "M2 Screw Size, 2.200 mm ID, 4.500 mm OD",
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-190",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Zinc-Plated Steel Square Nut",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "96887A118",
          "variant": "M4 x 0.7 mm Thread",
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-191",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "18-8 Stainless Steel Dowel Pin",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91585A334",
          "variant": "3 x 5mm",
          "quantity": 36,
          "quantityState": "published-unit-count",
          "quantityBoundary": "36 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-192",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Brass Tapered Heat-Set Inserts",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "94180A331",
          "variant": "M3 x 0.5 mm Thread, 3.8 mm Long",
          "quantity": 10,
          "quantityState": "published-unit-count",
          "quantityBoundary": "10 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-193",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Brass Tapered Heat-Set Inserts",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "94180A351",
          "variant": "M4 x 0.7 mm Thread , 4.7 mm Lonth",
          "quantity": 14,
          "quantityState": "published-unit-count",
          "quantityBoundary": "14 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-194",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Threadlocker, Loctite® 243",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91458A116",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-195",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Threadlocker, Loctite® 245",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91458A370",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        },
        {
          "id": "barkour-196",
          "robotRecordId": "bom-audit-barkour-vb",
          "sourceId": "barkour-robot-bom",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceSection": "Barkour vB full-robot BOM / Hardware",
          "name": "Threadlocker, Loctite® 262",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": "McMaster",
          "modelOrFile": "91458A180",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 total required for the source-declared “No. of Robots: 1” boundary; not an RCI-observed as-built count.",
          "role": "Hardware item in the Barkour vB build surface",
          "procurementBoundary": "RCI omits live source links and preserves only the responsibility-party manufacturer/source label, part number and quantity boundary. Availability and substitution are not verified.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI rebuild confirms this item."
          ]
        }
      ],
      "normalizedBomItemCount": 196,
      "manufacturerRelations": [],
      "componentRelations": [
        {
          "id": "robot-component-barkour-vb-realsense-d435i",
          "robotRecordId": "bom-audit-barkour-vb",
          "robotBomItemId": "barkour-110",
          "componentId": "cmp-realsense-d435i",
          "componentSlug": "realsense-d435i",
          "componentName": "RealSense Depth Camera D435i",
          "componentOfficialModel": "D435i",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Intel",
          "publishedPartNumber": "82635D435IDK5P",
          "publishedQuantity": 1,
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "identityEvidence": "The pinned Barkour vB responsibility-party BOM names “Real Sense Depth Camera D435i”, publishes Intel order code 82635D435IDK5P and places one unit in the Electronics section for the one-robot BOM boundary. The RCI component catalog separately identifies the exact official model D435i.",
          "quantityBoundary": "One unit is published for the source-declared “No. of Robots: 1” BOM boundary. RCI did not inspect a serialised Barkour unit and does not convert the published quantity into an as-built observation.",
          "evidenceBoundary": "This crosswalk proves that one pinned responsibility-party BOM row and one RCI exact-model component record refer to D435i. It does not prove current availability, substitution state, serial identity, installation in every Barkour unit, interface compatibility, performance, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "barkour-vb-nuc11",
          "robotRecordId": "bom-audit-barkour-vb",
          "label": "Intel NUC11TNBv7 onboard computer",
          "nodeKind": "compute",
          "configurationBoundary": "One Intel NUC 11 board published for the Barkour vB one-robot BOM and named NUC11TNBv7 in the hardware overview.",
          "sourceBomItemIds": [
            "barkour-64"
          ],
          "identityBoundary": "The sources identify the board and one BOM quantity, but not a serial, installed operating-system image, kernel, EtherLab build or one as-built robot."
        },
        {
          "id": "barkour-vb-usb-ethercat-adapter",
          "robotRecordId": "bom-audit-barkour-vb",
          "label": "TP-Link UE306 USB-to-RJ45 EtherCAT adapter path",
          "nodeKind": "control",
          "configurationBoundary": "One TP-Link UE306 plus the NUC_ECAT cable rows used for the Barkour vB EtherCAT host path.",
          "sourceBomItemIds": [
            "barkour-24",
            "barkour-63",
            "barkour-83"
          ],
          "identityBoundary": "The adapter model and cable names are published; physical port, MAC address, cable serials and negotiated link state are not."
        },
        {
          "id": "barkour-vb-motor-driver-fleet",
          "robotRecordId": "bom-audit-barkour-vb",
          "label": "Twelve Gebru/Cortes/Ada motor-driver assemblies",
          "nodeKind": "control",
          "configurationBoundary": "Twelve each of Gebru, Cortes and Ada in the selected vB BOM; the official overview describes this stack as the driver/encoder path and also documents Holberton as a drop-in alternative.",
          "sourceBomItemIds": [
            "barkour-2",
            "barkour-3",
            "barkour-4"
          ],
          "identityBoundary": "This node represents the BOM-selected Gebru/Cortes/Ada fleet, not Holberton substitution state, PCB revisions, aliases, firmware hashes or serialised assemblies."
        },
        {
          "id": "barkour-vb-ak80-9-fleet",
          "robotRecordId": "bom-audit-barkour-vb",
          "label": "Twelve modified T-Motor AK80-9 joint motors",
          "nodeKind": "actuation",
          "configurationBoundary": "Twelve AK80-9 motors published for the one-robot vB BOM; the hardware overview states that Barkour uses a modified variant with a thermistor and reinforced fasteners.",
          "sourceBomItemIds": [
            "barkour-1"
          ],
          "identityBoundary": "The source does not bind serials, motor winding lots, thermistor calibration, installed offsets, wear state or measured output to this index record."
        }
      ],
      "interfaceRelations": [
        {
          "id": "barkour-vb-nuc-usb-ue306",
          "robotRecordId": "bom-audit-barkour-vb",
          "fromNodeId": "barkour-vb-nuc11",
          "toNodeId": "barkour-vb-usb-ethercat-adapter",
          "relationType": "data-control",
          "interfaceLabel": "USB host path to TP-Link UE306 Gigabit Ethernet adapter for EtherCAT",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceUrl": "https://github.com/google-deepmind/barkour_robot/blob/e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b/docs/hardware_overview.md",
          "sourceBomItemIds": [
            "barkour-63",
            "barkour-64"
          ],
          "evidenceText": "The official hardware overview names NUC11TNBv7 as the onboard computer and TP-Link UE306 as the USB-to-RJ45 adapter used for EtherCAT; the pinned BOM publishes one of each.",
          "unresolved": [
            "The selected sources do not freeze the NUC USB port, USB descriptor, MAC address, kernel driver, negotiated speed or one physical adapter.",
            "RCI has not enumerated or traffic-tested this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "barkour-vb-ue306-cortes-ethercat-bus",
          "robotRecordId": "bom-audit-barkour-vb",
          "fromNodeId": "barkour-vb-usb-ethercat-adapter",
          "toNodeId": "barkour-vb-motor-driver-fleet",
          "relationType": "data-control",
          "interfaceLabel": "EtherCAT host to twelve motor-driver devices; typical 1 kHz bus cycle",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceUrl": "https://github.com/google-deepmind/barkour_robot/blob/e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b/docs/ethercat_config.md",
          "sourceBomItemIds": [
            "barkour-24",
            "barkour-25",
            "barkour-26",
            "barkour-27",
            "barkour-28",
            "barkour-29",
            "barkour-63",
            "barkour-83"
          ],
          "evidenceText": "The official host configuration installs EtherLab on the computer connected to the EtherCAT bus, shows Cortes as an attached slave, and publishes twelve physical bus positions and twelve aliases. The hardware overview identifies the UE306 adapter and a typical 1 kHz bus cycle.",
          "unresolved": [
            "No running master/slave capture, distributed-clock state, frame-loss trace, exact cable routing, alias readback or firmware digest is published for one indexed robot.",
            "Holberton is a documented alternative, but this relation remains scoped to the Gebru/Cortes/Ada rows selected by the pinned BOM.",
            "RCI has not powered or observed this EtherCAT chain."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "barkour-vb-driver-ak80-9-joint-control",
          "robotRecordId": "bom-audit-barkour-vb",
          "fromNodeId": "barkour-vb-motor-driver-fleet",
          "toNodeId": "barkour-vb-ak80-9-fleet",
          "relationType": "data-control",
          "interfaceLabel": "One Gebru/Cortes/Ada driver-and-encoder stack paired with each modified AK80-9 motor",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "google-deepmind/barkour_robot commit e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b",
          "sourceUrl": "https://github.com/google-deepmind/barkour_robot/blob/e7c0f6fa5c164347b39a9a8c3ba36bab60312c9b/docs/hardware_overview.md",
          "sourceBomItemIds": [
            "barkour-1",
            "barkour-2",
            "barkour-3",
            "barkour-4"
          ],
          "evidenceText": "The official overview says Barkour pairs each motor with Gebru and Cortes as the driver and Ada as the encoder; the pinned one-robot BOM publishes twelve of each board and twelve modified AK80-9 motors.",
          "unresolved": [
            "The source does not bind each board serial to a motor serial, freeze phase/encoder cable identities, publish calibration artifacts or prove all twelve installed assemblies match the BOM.",
            "Torque, velocity and thermal behavior are not inferred from the existence of this connection.",
            "RCI has not inspected, calibrated or driven any assembly."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-alohamini1",
      "platform": "AlohaMini1 mobile manipulator",
      "responsibilityParty": "AlohaMini project / Yi-Teng Li and Wu Zhiyong",
      "morphology": "mobile-manipulator",
      "platformRevisionBoundary": "AlohaMini1 mobile base, optional standalone compute, two follower arms and two leader arms at AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298; the host/client architecture and optional rows remain explicit.",
      "selectedBomSurface": "AlohaMini1/docs/BOM.md four build tables",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 35,
      "entryCountBoundary": "Nineteen mobile-base rows, three optional standalone rows, seven follower-arm rows and six leader-arm rows. Common tools are explicitly omitted by the source.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected BOM is commit-addressable but not bound to a numbered release tag, purchase lot or one serialised AlohaMini1 build.",
      "lifecycleBoundary": "The project identifies AlohaMini2 as a generational successor; AlohaMini1 rows are retained as their own boundary and are not overwritten by AlohaMini2 substitutions.",
      "strongestPublishedEvidence": "A quantified multi-subsystem list joining mobile base, compute option, dual follower arms and dual leader arms with regional links and printable-file directories.",
      "largestRebuildGap": "Optional compute and test-only controller rows are mixed into the publication surface, printed parts remain aggregates, and no independent end-to-end mobile-manipulation build is recorded.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this revision.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "The record distinguishes installed, optional and test-only rows. Source pricing, retailer availability, payload and two-hour assembly claims are not independently verified here.",
      "sources": [
        {
          "id": "alohamini1-bom",
          "title": "AlohaMini1 bill of materials",
          "url": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "location": "Mobile base, standalone option, follower arms and leader arms",
          "revision": "Commit 17c6a98"
        },
        {
          "id": "alohamini-repository",
          "title": "AlohaMini repository",
          "url": "https://github.com/liyiteng/AlohaMini/tree/17c6a98d79881a45ab869c1f392ed89c0723a298",
          "location": "AlohaMini1/AlohaMini2 architecture, hardware and software boundary",
          "revision": "Commit 17c6a98 · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "alohamini1",
      "href": "/robots/alohamini1/",
      "morphologyLabel": "Mobile manipulator",
      "publishedDisclosureCount": 7,
      "partialDisclosureCount": 3,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 71,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "alohamini1-1",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Servo motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "Feetech / 12V 1/345 Gear(STS3215-C018)",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-2",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Omni wheel",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "4″ (≈100 mm)",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-3",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "USB camera",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "720p focal length 2.4 mm, 36×36 mm form factor",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-4",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "(optional) Bearing",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "12×18×4 mm (ID × OD × W) — wheel axle bearing",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "This row is optional or test-only and is not treated as simultaneously installed base hardware."
          ]
        },
        {
          "id": "alohamini1-5",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Bearing",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "4×13×5 mm (ID × OD × W) — lift axis bearing",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-6",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M2×12 Phillips screw",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "For camera mounts (OBTCameraMount.stl, OBTopCameraMount)",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-7",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M3×12 hex socket screw",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Total 36 pcs (Servo Mount×24 ,Side Panel×12 )",
          "variant": null,
          "quantity": 36,
          "quantityState": "published-unit-count",
          "quantityBoundary": "36 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-8",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M3×18 hex socket screw",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "For OBChassisWheelAxleConnector.stl",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-9",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M3×30 hex socket screw",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "For OBTConnectorRight/Left.stl",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-10",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M3 hex nut",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "For OBTConnectorRight/Left.stl",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-11",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M3x5x4 heat-set insert",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Total 36 pcs (Servo Mount×24, Side Panel×12)",
          "variant": null,
          "quantity": 36,
          "quantityState": "published-unit-count",
          "quantityBoundary": "36 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-12",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M4×12 hex socket screw",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Total 20 pcs (Bearing Cover×12, Z-axis Servo Mount×8)",
          "variant": null,
          "quantity": 20,
          "quantityState": "published-unit-count",
          "quantityBoundary": "20 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-13",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "M4x6x5 heat-set insert",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "For OBChassisBearingCover.stl",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-14",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Adhesive",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Epoxy (strongly recommended) / double-sided tape — cable retention & structural bonding",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-15",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Servo extension cable",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "SCS 3-pin, 90 cm",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-16",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Battery",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "12 V Li-ion pack with 5521 barrel jack (male & female); one pack for the Raspberry Pi 5, the other for the mobile base and follower arms.",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-17",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "USB Type-C cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Only for testing the mobile base",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "This row is optional or test-only and is not treated as simultaneously installed base hardware."
          ]
        },
        {
          "id": "alohamini1-18",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "Waveshare Bus Servo Controller",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "Only for testing the mobile base",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile base configuration boundary.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "This row is optional or test-only and is not treated as simultaneously installed base hardware."
          ]
        },
        {
          "id": "alohamini1-19",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile base",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PLA/PETG/ABS (files in /hardware/mobilebase/stl)",
          "variant": "~4 kg filament",
          "quantity": 4,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “~4 kg filament”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Mobile base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini1-20",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Standalone Mode (Optional)",
          "name": "Compute board",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi 5 (≥ 2GB RAM)",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Standalone Mode (Optional) configuration boundary.",
          "role": "Standalone Mode (Optional) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "This row is optional or test-only and is not treated as simultaneously installed base hardware."
          ]
        },
        {
          "id": "alohamini1-21",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Standalone Mode (Optional)",
          "name": "DC converter",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "12V → 5V / 5A buck converter",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Standalone Mode (Optional) configuration boundary.",
          "role": "Standalone Mode (Optional) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "This row is optional or test-only and is not treated as simultaneously installed base hardware."
          ]
        },
        {
          "id": "alohamini1-22",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Standalone Mode (Optional)",
          "name": "Monitor",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "7-inch HD IPS HDMI interface + touch + Type C power supply",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Standalone Mode (Optional) configuration boundary.",
          "role": "Standalone Mode (Optional) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "This row is optional or test-only and is not treated as simultaneously installed base hardware."
          ]
        },
        {
          "id": "alohamini1-23",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "Servo motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "Feetech / 12V 1/345 Gear(STS3215-C018)",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected Follower Arms configuration boundary.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-24",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "Waveshare Bus Servo Controller",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "For connecting to the Raspberry Pi 5",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arms configuration boundary.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-25",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "USB camera",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "720p focal length 3.8 mm, 32×32 mm form factor",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arms configuration boundary.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-26",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "1-to-2 DC splitter cable",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "30 cm, 5521 connector — for powering the arms",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arms configuration boundary.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-27",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "DC extension cable",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1.5 m, 5521 connector — for powering the arms",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arms configuration boundary.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-28",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "USB Type-C cable",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "For connecting to the Raspberry Pi 5",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arms configuration boundary.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-29",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PLA/PETG/ABS (files in /hardware/arms/stl)",
          "variant": "1 set",
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1 set”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Follower Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini1-30",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms",
          "name": "Servo motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "Feetech / 7.4V 1/147 Gear(STS3215-C046)",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected Leader Arms configuration boundary.",
          "role": "Leader Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-31",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms",
          "name": "Waveshare Bus Servo Controller",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "For connecting to the PC",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Leader Arms configuration boundary.",
          "role": "Leader Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-32",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms",
          "name": "Battery",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "5V Li-ion pack (5600mAh, DC 5521 connector)",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arms configuration boundary.",
          "role": "Leader Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-33",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms",
          "name": "1-to-2 DC splitter cable",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "70 cm — for powering the arms",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arms configuration boundary.",
          "role": "Leader Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-34",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms",
          "name": "USB Type-C cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "For connecting to the PC",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Leader Arms configuration boundary.",
          "role": "Leader Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini1-35",
          "robotRecordId": "bom-audit-alohamini1",
          "sourceId": "alohamini1-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PLA/PETG/ABS (files in /hardware/arms/stl)",
          "variant": "1 set",
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1 set”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Leader Arms build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        }
      ],
      "normalizedBomItemCount": 35,
      "manufacturerRelations": [
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 4,
          "installedItemCount": 3,
          "itemIds": [
            "alohamini1-16",
            "alohamini1-20",
            "alohamini1-24",
            "alohamini1-28"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-alohamini1-optional-raspberry-pi-5",
          "robotRecordId": "bom-audit-alohamini1",
          "robotBomItemId": "alohamini1-20",
          "componentId": "cmp-raspberry-pi-5-family",
          "componentSlug": "raspberry-pi-5-family",
          "componentName": "Raspberry Pi 5",
          "componentOfficialModel": "Raspberry Pi 5",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 (≥ 2GB RAM)",
          "publishedQuantity": 1,
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "identityEvidence": "The pinned AlohaMini1 table names one Raspberry Pi 5 with at least 2 GB RAM inside Standalone Mode (Optional). The relation preserves that optional configuration and does not treat it as simultaneously installed base hardware.",
          "quantityBoundary": "One unit is published only within the optional standalone-mode boundary; PCB revision and selected RAM capacity above the minimum are not published.",
          "evidenceBoundary": "This family-level identity relation does not establish a PCB revision, default installation, power/cooling sufficiency, software compatibility, endorsement or physical validation.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "alohamini1-client-mobile-base",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "Client mobile base",
          "nodeKind": "assembly",
          "configurationBoundary": "AlohaMini1 client-side mobile base at the selected commit.",
          "sourceBomItemIds": [
            "alohamini1-1",
            "alohamini1-2",
            "alohamini1-3",
            "alohamini1-15",
            "alohamini1-16"
          ],
          "identityBoundary": "This node groups source-declared mobile-base rows; it is not a serialised as-built assembly."
        },
        {
          "id": "alohamini1-client-pi5",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "Optional Raspberry Pi 5 client compute",
          "nodeKind": "compute",
          "configurationBoundary": "Standalone Mode (Optional), one Raspberry Pi 5 with at least 2 GB RAM.",
          "sourceBomItemIds": [
            "alohamini1-20",
            "alohamini1-21"
          ],
          "identityBoundary": "Optional family-level Pi 5 identity; exact RAM above the minimum and PCB revision are not published."
        },
        {
          "id": "alohamini1-client-follower-arms",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "Two client-side follower arms",
          "nodeKind": "assembly",
          "configurationBoundary": "Two follower arms, their two bus-servo controllers and two Pi-facing USB Type-C cables.",
          "sourceBomItemIds": [
            "alohamini1-23",
            "alohamini1-24",
            "alohamini1-26",
            "alohamini1-27",
            "alohamini1-28"
          ],
          "identityBoundary": "The source publishes aggregate quantities for two arms; controller hardware revision and cable electrical ratings remain unpublished."
        },
        {
          "id": "alohamini1-host-pc",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "External PC workstation host",
          "nodeKind": "external-host",
          "configurationBoundary": "Host-side PC workstation described by the project architecture, outside the selected purchasable BOM rows.",
          "sourceBomItemIds": [],
          "identityBoundary": "No exact workstation model, operating-system image or interface inventory is published in the selected BOM."
        },
        {
          "id": "alohamini1-host-leader-arms",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "Two host-side leader arms",
          "nodeKind": "assembly",
          "configurationBoundary": "Two leader arms with two PC-facing bus-servo controllers and two USB Type-C cables.",
          "sourceBomItemIds": [
            "alohamini1-30",
            "alohamini1-31",
            "alohamini1-33",
            "alohamini1-34"
          ],
          "identityBoundary": "The project publishes the simplified 7.4 V 1/147 servo configuration; physical controller revisions and cable ratings are not published."
        },
        {
          "id": "alohamini1-client-12v-power",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "Two-pack 12 V client power allocation",
          "nodeKind": "power",
          "configurationBoundary": "Two 12 V Li-ion packs: one allocated to Pi 5 and one to mobile base plus follower arms.",
          "sourceBomItemIds": [
            "alohamini1-16",
            "alohamini1-21",
            "alohamini1-26",
            "alohamini1-27"
          ],
          "identityBoundary": "The source publishes voltage and connector family but not exact battery SKU, capacity, protection circuit, polarity verification or serials."
        },
        {
          "id": "alohamini1-host-5v-power",
          "robotRecordId": "bom-audit-alohamini1",
          "label": "5 V host-arm battery branch",
          "nodeKind": "power",
          "configurationBoundary": "One 5 V 5,600 mAh Li-ion pack and one 1-to-2 splitter for the two leader arms.",
          "sourceBomItemIds": [
            "alohamini1-32",
            "alohamini1-33"
          ],
          "identityBoundary": "Exact battery SKU, protection circuit, connector polarity and measured output remain unpublished."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-host-client-command-observation-role",
          "fromNodeId": "alohamini1-host-pc",
          "toNodeId": "alohamini1-client-pi5",
          "relationType": "software-role",
          "interfaceLabel": "Host/client command-and-observation architecture; transport not published",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini1-20"
          ],
          "evidenceText": "The project defines the client as the computation/control side and the host as the command-execution/observation side, then places the PC and leader arms on the host side. The optional Pi 5 is the only client compute row in this BOM.",
          "unresolved": [
            "The selected source does not freeze network transport, message schema, software commit, latency or workstation identity.",
            "The Pi 5 is optional rather than base-installed hardware."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-pi5-mobile-base-bus-servo",
          "fromNodeId": "alohamini1-client-pi5",
          "toNodeId": "alohamini1-client-mobile-base",
          "relationType": "data-control",
          "interfaceLabel": "Project-described bus-servo communication system",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini1-20"
          ],
          "evidenceText": "The architecture text states that the mobile base, arms and Raspberry Pi 5 use the same bus-servo communication system.",
          "unresolved": [
            "The exact adapter, connector path, bus electrical layer, baud rate, termination and wiring order are not frozen in the selected BOM.",
            "No powered integration test has been run by RCI."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-pi5-follower-arms-usb-bus-servo",
          "fromNodeId": "alohamini1-client-pi5",
          "toNodeId": "alohamini1-client-follower-arms",
          "relationType": "data-control",
          "interfaceLabel": "Two Pi-facing USB Type-C cables to two bus-servo controllers",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini1-24",
            "alohamini1-28"
          ],
          "evidenceText": "The follower-arm table publishes two Waveshare bus-servo controllers and two USB Type-C cables, both explicitly described as connecting to the Raspberry Pi 5.",
          "unresolved": [
            "Controller model/revision, cable connector pairing, USB generation, device enumeration and servo-bus wiring are not published.",
            "RCI has not validated simultaneous operation of both arms."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-pc-leader-arms-usb",
          "fromNodeId": "alohamini1-host-pc",
          "toNodeId": "alohamini1-host-leader-arms",
          "relationType": "data-control",
          "interfaceLabel": "Two PC-facing USB Type-C cables to two bus-servo controllers",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini1-31",
            "alohamini1-34"
          ],
          "evidenceText": "The leader-arm table publishes two Waveshare bus-servo controllers and two USB Type-C cables, both explicitly described as connecting to the PC.",
          "unresolved": [
            "Controller revision, cable connector pairing, USB generation, host ports, drivers and device mapping are not published.",
            "RCI has not validated both leader arms against one workstation."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-12v-pi5-buck-power",
          "fromNodeId": "alohamini1-client-12v-power",
          "toNodeId": "alohamini1-client-pi5",
          "relationType": "power",
          "interfaceLabel": "12 V battery allocation through optional 12 V-to-5 V / 5 A converter",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini1-16",
            "alohamini1-21"
          ],
          "evidenceText": "The mobile-base table allocates one of two 12 V packs to Raspberry Pi 5, while the optional standalone table publishes one 12 V-to-5 V / 5 A converter.",
          "unresolved": [
            "Converter SKU, efficiency, transient response, USB-C power-delivery behavior, fuse, wire gauge and measured Pi input voltage are not published.",
            "The Pi branch exists only in optional standalone mode."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-12v-mobile-base-power",
          "fromNodeId": "alohamini1-client-12v-power",
          "toNodeId": "alohamini1-client-mobile-base",
          "relationType": "power",
          "interfaceLabel": "Second 12 V battery pack allocated to the mobile-base/follower-arm branch",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini1-16"
          ],
          "evidenceText": "The source allocates the other 12 V pack to the mobile base and follower arms.",
          "unresolved": [
            "Distribution topology, protection, connector polarity, current split, fuse, wire gauge and peak-load margin are not published.",
            "RCI has not measured the branch under motion or lift load."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-12v-follower-arms-split-power",
          "fromNodeId": "alohamini1-client-12v-power",
          "toNodeId": "alohamini1-client-follower-arms",
          "relationType": "power",
          "interfaceLabel": "12 V branch via one 1-to-2 DC splitter and two extension cables",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini1-16",
            "alohamini1-26",
            "alohamini1-27"
          ],
          "evidenceText": "The source allocates one 12 V pack to the mobile base and follower arms and publishes one 1-to-2 splitter plus two 1.5 m extension cables for powering the arms.",
          "unresolved": [
            "Exact split point, current rating, polarity, voltage drop, connector mating and simultaneous twelve-servo load margin are not published.",
            "RCI has not instrumented this power path."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini1",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini1/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini1-5v-leader-arms-split-power",
          "fromNodeId": "alohamini1-host-5v-power",
          "toNodeId": "alohamini1-host-leader-arms",
          "relationType": "power",
          "interfaceLabel": "5 V battery through one 1-to-2 splitter to two leader arms",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini1-32",
            "alohamini1-33"
          ],
          "evidenceText": "The leader-arm table publishes one 5 V Li-ion pack and one 1-to-2 DC splitter described as powering the arms.",
          "unresolved": [
            "Per-arm current, splitter rating, connector polarity, protection, voltage drop and simultaneous twelve-servo behavior are not published.",
            "RCI has not tested this branch."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-alohamini2",
      "platform": "AlohaMini2 mobile manipulator",
      "responsibilityParty": "AlohaMini project / Yi-Teng Li and Wu Zhiyong",
      "morphology": "mobile-manipulator",
      "platformRevisionBoundary": "AlohaMini2 mobile base, two AM-ARM200 follower arms, two leader arms and fastener/consumable rows at commit 17c6a98d79881a45ab869c1f392ed89c0723a298; estimate-only summary rows are excluded.",
      "selectedBomSurface": "AlohaMini2/docs/BOM.md build tables excluding Total Estimate",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 42,
      "entryCountBoundary": "Twenty-two mobile-base rows, nine dual-follower rows, seven dual-leader rows and four fastener/consumable rows. Four estimate-summary rows and one estimate header are not BOM items.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The BOM is commit-addressable but not tied to a numbered release tag or physical unit manifest.",
      "lifecycleBoundary": "AlohaMini2 changes the arm, chassis, lift and printer boundary relative to AlohaMini1. The two profiles remain separate rather than treated as one mutable product page.",
      "strongestPublishedEvidence": "A 42-row dual-arm mobile-manipulator boundary with exact servo variants, compute, five cameras, batteries, lift/base structure alternatives, regional procurement links and production-file directories.",
      "largestRebuildGap": "Several printed-part rows and packs are aggregate quantities, steel/printed alternatives are not selected per unit, and no independent full-stack validation or as-built manifest exists.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this revision.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "published",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "A source-stated cost or performance figure is not an RCI benchmark. Pack quantities, alternatives and printed-material aggregates remain distinct from installed-unit counts.",
      "sources": [
        {
          "id": "alohamini2-bom",
          "title": "AlohaMini2 bill of materials",
          "url": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "location": "Mobile base, dual follower/leader arms and consumables",
          "revision": "Commit 17c6a98 · 42 selected item rows"
        },
        {
          "id": "alohamini2-readme",
          "title": "AlohaMini2 project overview",
          "url": "https://github.com/liyiteng/AlohaMini/tree/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2",
          "location": "Generation, architecture, hardware and build-document links",
          "revision": "Commit 17c6a98 · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "alohamini2",
      "href": "/robots/alohamini2/",
      "morphologyLabel": "Mobile manipulator",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "alohamini2-1",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Servo — STS-3215 (wheel)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "ST-3215-C018, 12V, 1/345 gear",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-2",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Servo — STS-3095 (lift)",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "ST-3095-C002, 12V, 95 kg·cm",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-3",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Omni wheel",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "127 mm (74A)",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-4",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Aluminum extrusion (T-frame)",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "20×40×2 mm, L=400 mm (or print OTConnectorCrossBar.stl)",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-5",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Steel pin (chassis)",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Φ12×80 mm (or print OChassisDowelPin1280.stl)",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-6",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Steel pin (lift axis)",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Φ12×25 mm (or print OTConnectorDowelPin1225.stl)",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-7",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Bearing — lift track",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "4×13×5 mm",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-8",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Bearing — chassis/arm/lift",
          "itemClass": "bearing",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "12×18×4 mm",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-9",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Camera — front",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "H65V1, 720p, 2.4 mm, 1 m cable",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-10",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Camera — back",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "H65V1, 720p, 2.4 mm, 1 m cable",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-11",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Camera — chest",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "H65V1, 720p, 2.4 mm, 2 m cable",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-12",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Raspberry Pi 5",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "2 GB RAM",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-13",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "DC buck converter",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "12V→5V 5A (PD protocol)",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-14",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Heatsink",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": "Raspberry Pi 5 (passive)",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-15",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "microSD card",
          "itemClass": "storage",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "32 GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-16",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "HDMI→Micro HDMI cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1 m, 4K60Hz",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-17",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Bus servo controller",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "Waveshare Bus Servo Adapter A",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-18",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Battery 12V",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "11200 mAh, DC 5521",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-19",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "DC splitter cable",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1-to-2, 30 cm",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-20",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "DC extension cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1 m",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-21",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "Servo extension cable",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "90 cm, Feetech 3-pin",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Mobile Base configuration boundary.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-22",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Mobile Base",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PLA/PETG/ABS, Bambu P2S",
          "variant": "—",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The source publishes quantity “—”; no numeric installed count is normalized.",
          "role": "Mobile Base build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-23",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Servo — STS-3215",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "ST-3215-C018, 12V, 1/345 gear",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "8 units published within the selected Follower Arms (×2) configuration boundary.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-24",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Servo — STS-3095",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "ST-3095-C002, 12V, 95 kg·cm",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published within the selected Follower Arms (×2) configuration boundary.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-25",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Hex socket screw M3×10",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "100-pack",
          "variant": "2 packs",
          "quantity": 2,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “2 packs”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-26",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Heat-set insert",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×5×4",
          "variant": "1 pack",
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1 pack”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-27",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Servo extension cable",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "SCS 3-pin, 26 cm",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected Follower Arms (×2) configuration boundary.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-28",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Camera — wrist",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "H65V1, 720p, 2.4 mm, 2 m cable",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arms (×2) configuration boundary.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-29",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "Bus servo controller",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "Waveshare Bus Servo Adapter A",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arms (×2) configuration boundary.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-30",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "USB Type-C cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1 m (arm → Pi 5)",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published within the selected Follower Arms (×2) configuration boundary.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-31",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Follower Arms (×2)",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PLA/PETG/ABS, Bambu P2S",
          "variant": "—",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The source publishes quantity “—”; no numeric installed count is normalized.",
          "role": "Follower Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-32",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "Servo — STS-3215",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": "ST-3215-C046, 7.4V, 1/147 gear",
          "variant": null,
          "quantity": 14,
          "quantityState": "published-unit-count",
          "quantityBoundary": "14 units published within the selected Leader Arms (×2) configuration boundary.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-33",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "Heat-set insert",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×5×4",
          "variant": "1 pack",
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1 pack”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-34",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "Bus servo controller",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": "Waveshare",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Leader Arms (×2) configuration boundary.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-35",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "Power supply 5V",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DC 5V AC adapter",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arms (×2) configuration boundary.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-36",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "USB Type-C cable",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1 m (arm → PC)",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Leader Arms (×2) configuration boundary.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-37",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "DC splitter cable",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "1-to-2, 70 cm",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arms (×2) configuration boundary.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "alohamini2-38",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Leader Arms (×2)",
          "name": "3D-printed parts",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PLA/PETG/ABS, Bambu P2S",
          "variant": "—",
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The source publishes quantity “—”; no numeric installed count is normalized.",
          "role": "Leader Arms (×2) build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-39",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Fasteners & Consumables",
          "name": "Heat-set insert M3",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "M3×5×4 mm, 50-pack",
          "variant": "1 pack",
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1 pack”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Fasteners & Consumables build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-40",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Fasteners & Consumables",
          "name": "Hex socket screw M3×10",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "100-pack, blue thread-lock",
          "variant": "3 packs",
          "quantity": 3,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “3 packs”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Fasteners & Consumables build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-41",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Fasteners & Consumables",
          "name": "Hex socket screw M3×18",
          "itemClass": "fastener",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "50-pack",
          "variant": "1 pack",
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1 pack”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Fasteners & Consumables build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "alohamini2-42",
          "robotRecordId": "bom-audit-alohamini2",
          "sourceId": "alohamini2-bom",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceSection": "Fasteners & Consumables",
          "name": "Epoxy adhesive",
          "itemClass": "material",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Loctite E-120HP 50 mL",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Fasteners & Consumables configuration boundary.",
          "role": "Fasteners & Consumables build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        }
      ],
      "normalizedBomItemCount": 42,
      "manufacturerRelations": [
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 2,
          "installedItemCount": 2,
          "itemIds": [
            "alohamini2-12",
            "alohamini2-14"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-alohamini2-raspberry-pi-5",
          "robotRecordId": "bom-audit-alohamini2",
          "robotBomItemId": "alohamini2-12",
          "componentId": "cmp-raspberry-pi-5-family",
          "componentSlug": "raspberry-pi-5-family",
          "componentName": "Raspberry Pi 5",
          "componentOfficialModel": "Raspberry Pi 5",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 2 GB",
          "publishedQuantity": 1,
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "identityEvidence": "The pinned AlohaMini2 Mobile Base table publishes one Raspberry Pi 5 with 2 GB RAM. RCI maps the exact family name and preserves the memory configuration without inferring a PCB revision.",
          "quantityBoundary": "One board is published for the selected AlohaMini2 mobile-base configuration. No serial, receipt, PCB revision, image or unit-level as-built manifest is available.",
          "evidenceBoundary": "This family-level crosswalk does not prove power or cooling sufficiency, peripheral or software compatibility, current availability, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [
        {
          "id": "alohamini1-to-alohamini2",
          "robotRecordId": "bom-audit-alohamini2",
          "relationType": "version-upgrade",
          "from": "AlohaMini1",
          "to": "AlohaMini2",
          "effectiveBoundary": "The responsibility-party project separates AlohaMini1 and AlohaMini2 folders and identifies a changed arm system, mobile base, lift and printer boundary.",
          "systemImpact": "Arm actuation, chassis, lifting structure, camera/compute selection and production-file requirements change together.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "alohamini2-readme",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "unresolved": "No responsibility-party field-by-field migration manifest or RCI physical upgrade test is published."
        }
      ],
      "topologyNodes": [
        {
          "id": "alohamini2-host-mobile-base",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Host mobile base and lift assembly",
          "nodeKind": "assembly",
          "configurationBoundary": "AlohaMini2 Host-side mobile base: three ST-3215-C018 wheel servos, one ST-3095-C002 lift servo and three 127 mm omni wheels.",
          "sourceBomItemIds": [
            "alohamini2-1",
            "alohamini2-2",
            "alohamini2-3"
          ],
          "identityBoundary": "The responsibility-party quantities are not a serialised as-built manifest; servo serials, firmware, IDs, calibration and mechanical condition are unpublished."
        },
        {
          "id": "alohamini2-host-pi5",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Host Raspberry Pi 5 compute",
          "nodeKind": "compute",
          "configurationBoundary": "One Raspberry Pi 5 with 2 GB RAM, 32 GB microSD and passive heatsink in the Host-side mobile-base table.",
          "sourceBomItemIds": [
            "alohamini2-12",
            "alohamini2-14",
            "alohamini2-15"
          ],
          "identityBoundary": "The source fixes the 2 GB memory configuration but not PCB revision, serial, operating-system image, package lock, firmware or storage image."
        },
        {
          "id": "alohamini2-host-mobile-bus-controller",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Host mobile-base Waveshare bus-servo controller",
          "nodeKind": "control",
          "configurationBoundary": "One Waveshare Bus Servo Adapter A listed with the mobile base.",
          "sourceBomItemIds": [
            "alohamini2-17",
            "alohamini2-21"
          ],
          "identityBoundary": "Board revision, USB host path, servo-bus voltage, baud rate, port allocation and firmware are not frozen."
        },
        {
          "id": "alohamini2-host-follower-controllers",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Two Host-side follower-arm bus-servo controllers",
          "nodeKind": "control",
          "configurationBoundary": "Two Waveshare Bus Servo Adapter A controllers listed for the two follower arms.",
          "sourceBomItemIds": [
            "alohamini2-29",
            "alohamini2-30"
          ],
          "identityBoundary": "Controller hardware revision, per-arm assignment, USB connector pairing, firmware and bus settings are not published."
        },
        {
          "id": "alohamini2-host-follower-arms",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Two Host-side AM-ARM200 follower arms",
          "nodeKind": "assembly",
          "configurationBoundary": "Two 6+1 DoF follower arms with eight ST-3215-C018 and six ST-3095-C002 servos, two controllers and two wrist cameras.",
          "sourceBomItemIds": [
            "alohamini2-23",
            "alohamini2-24",
            "alohamini2-27",
            "alohamini2-28"
          ],
          "identityBoundary": "Aggregate two-arm quantities do not establish serials, per-arm allocation, calibration, load capability or successful synchronized operation."
        },
        {
          "id": "alohamini2-host-cameras",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Five H65V1 camera paths",
          "nodeKind": "perception",
          "configurationBoundary": "Front, back and chest H65V1 cameras plus two follower-arm wrist H65V1 cameras at the published cable lengths.",
          "sourceBomItemIds": [
            "alohamini2-9",
            "alohamini2-10",
            "alohamini2-11",
            "alohamini2-28"
          ],
          "identityBoundary": "The source publishes H65V1, 720p, lens and cable length but not sensor silicon, USB mode, device mapping, calibration, frame timing or measured image quality."
        },
        {
          "id": "alohamini2-client-pc",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Client PC workstation",
          "nodeKind": "external-host",
          "configurationBoundary": "The AlohaMini2 architecture assigns the PC workstation and leader arms to the Client side; the PC is outside the selected purchasable BOM rows.",
          "sourceBomItemIds": [],
          "identityBoundary": "No workstation model, operating-system image, ports, drivers, network transport or software environment is fixed."
        },
        {
          "id": "alohamini2-client-leader-arms",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Two Client-side leader arms",
          "nodeKind": "assembly",
          "configurationBoundary": "Two leader arms with fourteen ST-3215-C046 7.4 V 1/147 servos, two Waveshare controllers and two PC-facing USB Type-C cables.",
          "sourceBomItemIds": [
            "alohamini2-32",
            "alohamini2-34",
            "alohamini2-36"
          ],
          "identityBoundary": "The source does not publish controller revision, per-arm servo allocation, serials, calibration, USB enumeration or measured bilateral-control behavior."
        },
        {
          "id": "alohamini2-host-12v-power",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "Two-pack 12 V Host power surface",
          "nodeKind": "power",
          "configurationBoundary": "Two 12 V 11,200 mAh DC5521 batteries, one 1-to-2 splitter, two extensions and one 12 V-to-5 V / 5 A PD buck converter.",
          "sourceBomItemIds": [
            "alohamini2-13",
            "alohamini2-18",
            "alohamini2-19",
            "alohamini2-20"
          ],
          "identityBoundary": "Battery SKU, cell chemistry, protection, polarity, fuse, wire gauge, branch allocation, state of charge and load-tested output are unpublished."
        },
        {
          "id": "alohamini2-client-5v-power",
          "robotRecordId": "bom-audit-alohamini2",
          "label": "5 V Client leader-arm power surface",
          "nodeKind": "power",
          "configurationBoundary": "One 5 V AC adapter and one 1-to-2, 70 cm DC splitter listed under the two leader arms.",
          "sourceBomItemIds": [
            "alohamini2-35",
            "alohamini2-37"
          ],
          "identityBoundary": "Adapter SKU, current rating, connector polarity, splitter rating, per-arm load and protection are not published or measured."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-host-client-command-observation-role",
          "fromNodeId": "alohamini2-client-pc",
          "toNodeId": "alohamini2-host-pi5",
          "relationType": "software-role",
          "interfaceLabel": "Client PC/leader versus Host base/follower/compute architecture; transport not published",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini2-12",
            "alohamini2-32",
            "alohamini2-36"
          ],
          "evidenceText": "The responsibility-party BOM explicitly defines Host as mobile base plus follower arms plus Raspberry Pi 5 compute, and Client as PC workstation plus leader arms.",
          "unresolved": [
            "Network medium, topology, message schema, software revision, clocks, latency, safety behavior and PC identity are not published.",
            "RCI has not run a Host/Client session."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-mobile-controller-drive-lift-servo-bus",
          "fromNodeId": "alohamini2-host-mobile-bus-controller",
          "toNodeId": "alohamini2-host-mobile-base",
          "relationType": "data-control",
          "interfaceLabel": "Feetech three-pin bus-servo path through two 90 cm extensions",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini2-1",
            "alohamini2-2",
            "alohamini2-17",
            "alohamini2-21"
          ],
          "evidenceText": "The mobile-base table co-locates one Waveshare Bus Servo Adapter A, three 12 V wheel servos, one 12 V lift servo and two explicitly named Feetech three-pin extension cables.",
          "unresolved": [
            "Exact chain order, controller-to-Pi cable, ports, IDs, baud rate, feedback mapping, termination and voltage-domain behavior are not published.",
            "No bus capture or powered motion test exists."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-pi5-follower-controller-usb",
          "fromNodeId": "alohamini2-host-pi5",
          "toNodeId": "alohamini2-host-follower-controllers",
          "relationType": "data-control",
          "interfaceLabel": "Four one-metre USB Type-C arm-to-Pi 5 cables serving two follower-arm controllers",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini2-29",
            "alohamini2-30"
          ],
          "evidenceText": "The follower-arm table publishes two Waveshare Bus Servo Adapter A controllers and four USB Type-C cables explicitly labelled arm to Pi 5.",
          "unresolved": [
            "The reason for four cables across two controllers, connector pairing, USB generation, hub topology, drivers and device mapping are not published.",
            "RCI has not validated simultaneous two-arm enumeration."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-follower-controller-servo-bus",
          "fromNodeId": "alohamini2-host-follower-controllers",
          "toNodeId": "alohamini2-host-follower-arms",
          "relationType": "data-control",
          "interfaceLabel": "Twelve SCS three-pin servo extensions within the two follower-arm assemblies",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini2-23",
            "alohamini2-24",
            "alohamini2-27",
            "alohamini2-29"
          ],
          "evidenceText": "The follower-arm table publishes fourteen servos, two controllers and twelve SCS three-pin extension cables in the same two-arm configuration.",
          "unresolved": [
            "Per-arm wiring order, cable-to-joint mapping, IDs, baud rate, power injection and feedback assignment are not published.",
            "This assembly-level relation is not a wiring diagram or physical validation."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-pc-leader-controller-usb",
          "fromNodeId": "alohamini2-client-pc",
          "toNodeId": "alohamini2-client-leader-arms",
          "relationType": "data-control",
          "interfaceLabel": "Two one-metre USB Type-C arm-to-PC controller paths",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "alohamini2-34",
            "alohamini2-36"
          ],
          "evidenceText": "The leader-arm table publishes two Waveshare controllers and two USB Type-C cables explicitly labelled arm to PC.",
          "unresolved": [
            "Controller revision, USB generation, workstation ports, drivers, device mapping and leader-servo bus wiring are not published.",
            "RCI has not validated both leader arms on one PC."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-camera-compute-path",
          "fromNodeId": "alohamini2-host-cameras",
          "toNodeId": "alohamini2-host-pi5",
          "relationType": "data-control",
          "interfaceLabel": "Five H65V1 camera cable paths; connector and protocol not published in the selected BOM",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini2-9",
            "alohamini2-10",
            "alohamini2-11",
            "alohamini2-28",
            "alohamini2-12"
          ],
          "evidenceText": "The Host architecture includes Raspberry Pi 5 compute and the BOM publishes five H65V1 cameras with fixed cable lengths across the base and follower arms.",
          "unresolved": [
            "The selected source does not explicitly identify USB type, hub topology, Pi ports, bandwidth allocation, enumeration, synchronization or calibration.",
            "RCI has not captured frames or measured simultaneous camera throughput."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-12v-pi5-buck-power",
          "fromNodeId": "alohamini2-host-12v-power",
          "toNodeId": "alohamini2-host-pi5",
          "relationType": "power",
          "interfaceLabel": "12 V battery surface through 12 V-to-5 V / 5 A PD buck converter",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini2-12",
            "alohamini2-13",
            "alohamini2-18"
          ],
          "evidenceText": "The mobile-base table publishes two 12 V batteries alongside one 12 V-to-5 V / 5 A PD converter and one Raspberry Pi 5.",
          "unresolved": [
            "Which battery branch feeds the converter, PD negotiation, connector chain, fuse, efficiency, transient margin and measured Pi voltage are not published.",
            "RCI has not powered this path."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-12v-mobile-follower-power",
          "fromNodeId": "alohamini2-host-12v-power",
          "toNodeId": "alohamini2-host-mobile-base",
          "relationType": "power",
          "interfaceLabel": "12 V DC5521 battery/splitter/extension surface for Host-side 12 V motion loads",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini2-1",
            "alohamini2-2",
            "alohamini2-18",
            "alohamini2-19",
            "alohamini2-20"
          ],
          "evidenceText": "The mobile-base table publishes 12 V wheel/lift servos together with two 12 V DC5521 batteries, a splitter and two DC extensions.",
          "unresolved": [
            "Exact battery allocation between base and follower arms, connector polarity, current rating, fuse, wire gauge and load margin are not published.",
            "RCI has not instrumented motion or lift current."
          ]
        },
        {
          "robotRecordId": "bom-audit-alohamini2",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "liyiteng/AlohaMini commit 17c6a98d79881a45ab869c1f392ed89c0723a298",
          "sourceUrl": "https://github.com/liyiteng/AlohaMini/blob/17c6a98d79881a45ab869c1f392ed89c0723a298/AlohaMini2/docs/BOM.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "alohamini2-5v-leader-arm-power",
          "fromNodeId": "alohamini2-client-5v-power",
          "toNodeId": "alohamini2-client-leader-arms",
          "relationType": "power",
          "interfaceLabel": "5 V AC adapter through one 1-to-2 splitter to two leader arms",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "alohamini2-32",
            "alohamini2-35",
            "alohamini2-37"
          ],
          "evidenceText": "The leader-arm table publishes one 5 V AC adapter and one 1-to-2 splitter in the two-arm configuration.",
          "unresolved": [
            "Adapter current rating, splitter polarity, connector mating, per-arm distribution, protection and simultaneous fourteen-servo behavior are not published.",
            "RCI has not tested this power branch."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-lekiwi-12v",
      "platform": "LeKiwi 12 V mobile manipulator",
      "responsibilityParty": "SIGRobotics UIUC LeKiwi project",
      "morphology": "mobile-manipulator",
      "platformRevisionBoundary": "Shared structure/compute/other rows plus only the 12 V mobile-base and 12 V SO-101 teleoperation rows at LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033; 5 V and wired configurations are excluded.",
      "selectedBomSurface": "LeKiwi BOM 12 V configuration",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 16,
      "entryCountBoundary": "Two shared structure rows, three compute/sensor rows, three other/tool rows, five 12 V base-electronics rows and three 12 V arm-set rows. Price-summary rows are excluded.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The Version 1 BOM is commit-addressable but not tied to an as-built unit, purchase receipt set or numbered release tag.",
      "lifecycleBoundary": "The publication offers mutually exclusive 5 V, 12 V and wired paths. This record selects 12 V only and does not merge the other paths.",
      "strongestPublishedEvidence": "A configuration-specific mobile-manipulator list with shared structure/compute, Raspberry Pi 5, cameras, base drive, power conversion and two SO-101 arms.",
      "largestRebuildGap": "Generic screw/tool/cable bundles, aggregated arm-set rows, mutable retailer links and absent as-built wiring/serial evidence prevent a complete rebuild conclusion.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this configuration.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "The 12 V selection is an RCI normalization choice grounded in the source headings. Prices, regional links and compatibility outside the selected configuration are not asserted.",
      "sources": [
        {
          "id": "lekiwi-bom",
          "title": "LeKiwi bill of materials",
          "url": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/BOM.md",
          "location": "Shared rows and mutually exclusive 5 V, 12 V and wired configurations",
          "revision": "Commit efa608d · selected 12 V path"
        },
        {
          "id": "lekiwi-repository",
          "title": "LeKiwi repository",
          "url": "https://github.com/SIGRobotics-UIUC/LeKiwi/tree/efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "location": "Version 1 design, print, assembly and LeRobot integration",
          "revision": "Commit efa608d · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "lekiwi-12v",
      "href": "/robots/lekiwi-12v/",
      "morphologyLabel": "Mobile manipulator",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "lekiwi-12v-1",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Structure:",
          "name": "4\" Omni wheels",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base Structure: configuration boundary.",
          "role": "Mobile Base Structure: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-2",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Structure:",
          "name": "M2 M3 M4 Assorted Screw Set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Mobile Base Structure: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "lekiwi-12v-3",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "Raspberry Pi 5 (4GB)",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-4",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "USB camera2",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-5",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "microSD card",
          "itemClass": "storage",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-6",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Other",
          "name": "Table Clamp 4pcs",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Other build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "lekiwi-12v-7",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Other",
          "name": "Screwdriver Set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Other configuration boundary.",
          "role": "Other build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-8",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Other",
          "name": "USB-C to USB-A Cable 2 pcs",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Other build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "lekiwi-12v-9",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics (12V):",
          "name": "12v 5a Battery",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics (12V): configuration boundary.",
          "role": "Mobile Base Electronics (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-10",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics (12V):",
          "name": "Lever Wire Connector",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics (12V): configuration boundary.",
          "role": "Mobile Base Electronics (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-11",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics (12V):",
          "name": "12v 5a DC plug connector",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics (12V): configuration boundary.",
          "role": "Mobile Base Electronics (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-12",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics (12V):",
          "name": "12v to 5v 5a USB-C converter",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics (12V): configuration boundary.",
          "role": "Mobile Base Electronics (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-13",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics (12V):",
          "name": "12v ST3215 Feetech Servo",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": null,
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base Electronics (12V): configuration boundary.",
          "role": "Mobile Base Electronics (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-14",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "SO-101 2 Robot Arm Teleoperation Set (12V):",
          "name": "12v ST3215 Servo",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Feetech",
          "modelOrFile": null,
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "12 units published within the selected SO-101 2 Robot Arm Teleoperation Set (12V): configuration boundary.",
          "role": "SO-101 2 Robot Arm Teleoperation Set (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-15",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "SO-101 2 Robot Arm Teleoperation Set (12V):",
          "name": "Motor Control Board",
          "itemClass": "actuation",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected SO-101 2 Robot Arm Teleoperation Set (12V): configuration boundary.",
          "role": "SO-101 2 Robot Arm Teleoperation Set (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "lekiwi-12v-16",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "sourceId": "lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "SO-101 2 Robot Arm Teleoperation Set (12V):",
          "name": "Power Supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected SO-101 2 Robot Arm Teleoperation Set (12V): configuration boundary.",
          "role": "SO-101 2 Robot Arm Teleoperation Set (12V): build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        }
      ],
      "normalizedBomItemCount": 16,
      "manufacturerRelations": [
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 1,
          "installedItemCount": 1,
          "itemIds": [
            "lekiwi-12v-3"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-lekiwi-12v-raspberry-pi-5",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "robotBomItemId": "lekiwi-12v-3",
          "componentId": "cmp-raspberry-pi-5-family",
          "componentSlug": "raspberry-pi-5-family",
          "componentName": "Raspberry Pi 5",
          "componentOfficialModel": "Raspberry Pi 5",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 4 GB",
          "publishedQuantity": 1,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned LeKiwi 12 V Sensors and Compute table publishes one Raspberry Pi 5 with 4 GB RAM. RCI maps the family identity while keeping this 12 V configuration separate from the LeKiwi 5 V and wired alternatives.",
          "quantityBoundary": "One board is published for the selected LeKiwi 12 V configuration. No serial, receipt, PCB revision or as-built inspection is available.",
          "evidenceBoundary": "This relation does not prove battery-path sufficiency, cooling, software/peripheral compatibility, current availability, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "lekiwi-12v-pi5",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "label": "Raspberry Pi 5 (4 GB) onboard compute",
          "nodeKind": "compute",
          "configurationBoundary": "One Raspberry Pi 5 (4 GB) in the selected LeKiwi 12 V BOM and top-plate assembly path.",
          "sourceBomItemIds": [
            "lekiwi-12v-3"
          ],
          "identityBoundary": "Family, RAM option and quantity are published; PCB revision, serial, storage image, software commit and physical port allocation are not."
        },
        {
          "id": "lekiwi-12v-usb-camera-pair",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "label": "Two USB cameras (base and wrist positions)",
          "nodeKind": "control",
          "configurationBoundary": "Two generic USB-camera rows in the selected 12 V BOM; the assembly provides Arducam and webcam mounting options rather than one frozen camera SKU.",
          "sourceBomItemIds": [
            "lekiwi-12v-4",
            "lekiwi-12v-8"
          ],
          "identityBoundary": "Camera SKU, sensor, lens, USB descriptor, calibration and exact choice between published mounting options are unresolved."
        },
        {
          "id": "lekiwi-12v-mobile-base-servo-controller",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "label": "Mobile-base servo controller described by assembly",
          "nodeKind": "control",
          "configurationBoundary": "The assembly explicitly mounts one servo driver for the three drive servos and routes its USB cable to the Raspberry Pi.",
          "sourceBomItemIds": [],
          "identityBoundary": "The selected BOM does not isolate an exact mobile-base controller SKU or unambiguously bind this assembly node to one of the two arm-set “Motor Control Board” purchase rows."
        },
        {
          "id": "lekiwi-12v-drive-servo-triplet",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "label": "Three 12 V ST3215 drive servos",
          "nodeKind": "actuation",
          "configurationBoundary": "Three 12 V ST3215 Feetech servos in the selected mobile-base electronics section.",
          "sourceBomItemIds": [
            "lekiwi-12v-13"
          ],
          "identityBoundary": "The row does not publish one exact reduction/variant suffix, serials, IDs, calibration, firmware or installed condition."
        },
        {
          "id": "lekiwi-12v-power-branch",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "label": "12 V battery, DC branch and 12 V-to-5 V / 5 A converter",
          "nodeKind": "power",
          "configurationBoundary": "Selected 12 V path comprising one 12 V / 5 A battery, lever connectors, DC plug adapter and 12 V-to-5 V / 5 A USB-C converter.",
          "sourceBomItemIds": [
            "lekiwi-12v-9",
            "lekiwi-12v-10",
            "lekiwi-12v-11",
            "lekiwi-12v-12"
          ],
          "identityBoundary": "Battery capacity, protection, converter SKU, polarity, fuse, connector current rating, wire gauge and measured rail behavior are not published."
        }
      ],
      "interfaceRelations": [
        {
          "id": "lekiwi-12v-pi5-usb-cameras",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "fromNodeId": "lekiwi-12v-pi5",
          "toNodeId": "lekiwi-12v-usb-camera-pair",
          "relationType": "data-control",
          "interfaceLabel": "Two camera USB cables connected directly to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-12v-3",
            "lekiwi-12v-4",
            "lekiwi-12v-8"
          ],
          "evidenceText": "The final assembly instruction says that USB cables from the cameras can be plugged directly into the Raspberry Pi; the selected BOM publishes one Pi 5, two generic USB cameras and a two-cable bundle.",
          "unresolved": [
            "Camera option/SKU, Pi port allocation, cable-to-camera mapping, USB mode, enumeration, bandwidth, calibration and simultaneous capture behavior are not frozen.",
            "RCI has not connected or streamed either camera."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-12v-pi5-usb-servo-controller",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "fromNodeId": "lekiwi-12v-pi5",
          "toNodeId": "lekiwi-12v-mobile-base-servo-controller",
          "relationType": "data-control",
          "interfaceLabel": "Servo-controller USB-C-to-USB-A cable connected directly to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-12v-3",
            "lekiwi-12v-8"
          ],
          "evidenceText": "The assembly routes the servo-controller USB-C-to-USB-A cable through the top plate and later says the controller USB cable can be plugged directly into the Raspberry Pi.",
          "unresolved": [
            "The mobile-base controller exact SKU and its relationship to the BOM arm-set board count are unresolved.",
            "Pi port, USB descriptor, serial port, baud rate, servo protocol and device mapping are not published.",
            "RCI has not enumerated this controller."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-12v-controller-drive-servos",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "fromNodeId": "lekiwi-12v-mobile-base-servo-controller",
          "toNodeId": "lekiwi-12v-drive-servo-triplet",
          "relationType": "data-control",
          "interfaceLabel": "Servo-driver wires attached to three drive servos",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-12v-13"
          ],
          "evidenceText": "The bottom-plate assembly instructs the builder to add the servo driver and attach its wires to the three drive servos; the selected 12 V BOM publishes three ST3215 drive servos.",
          "unresolved": [
            "Exact servo submodel/reduction, controller SKU, bus topology, connector order, servo IDs, baud rate, direction configuration and wheel mapping are not published in the selected sources.",
            "RCI has not rotated a wheel or observed bus traffic."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-12v-power-pi5-converter",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "fromNodeId": "lekiwi-12v-power-branch",
          "toNodeId": "lekiwi-12v-pi5",
          "relationType": "power",
          "interfaceLabel": "12 V battery branch through 12 V-to-5 V / 5 A converter and USB-C to Raspberry Pi 5",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-12v-3",
            "lekiwi-12v-9",
            "lekiwi-12v-10",
            "lekiwi-12v-12"
          ],
          "evidenceText": "The 12 V wiring instruction connects battery leads to the 12 V-to-5 V converter through lever connectors, and final assembly connects the 5 V USB-C output to Raspberry Pi 5.",
          "unresolved": [
            "Polarity, fuse, wire gauge, converter SKU/efficiency, transient margin, USB-C behavior and measured Pi input rail are not published.",
            "RCI has not instrumented or powered this branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-12v-power-servo-controller-dc",
          "robotRecordId": "bom-audit-lekiwi-12v",
          "fromNodeId": "lekiwi-12v-power-branch",
          "toNodeId": "lekiwi-12v-mobile-base-servo-controller",
          "relationType": "power",
          "interfaceLabel": "12 V battery branch through DC barrel-plug adapter to servo motor controller",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-12v-9",
            "lekiwi-12v-10",
            "lekiwi-12v-11"
          ],
          "evidenceText": "The 12 V wiring instruction connects the battery leads to the DC barrel-plug adapter through lever connectors, and final assembly plugs that adapter into the servo motor controller.",
          "unresolved": [
            "Controller SKU, barrel dimensions, polarity, fuse, wire gauge, current rating, inrush behavior and simultaneous three-servo load margin are not published.",
            "RCI has not measured or powered this branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-dynamixel-lekiwi",
      "platform": "DYNAMIXEL LeKiwi mobile manipulator",
      "responsibilityParty": "SIGRobotics UIUC LeKiwi project",
      "morphology": "mobile-manipulator",
      "platformRevisionBoundary": "All selected build rows in DynamixelLeKiwi/BOM.md at commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033; this variant remains separate from Feetech-based LeKiwi configurations.",
      "selectedBomSurface": "DynamixelLeKiwi/BOM.md full build tables",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 37,
      "entryCountBoundary": "Three base-structure, five compute/sensor, three other/tool, five base-electronics, nine leader-arm and twelve follower-arm rows. Price-summary rows are excluded.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The variant-specific BOM is commit-addressable but not bound to a numbered release or one as-built unit.",
      "lifecycleBoundary": "This DYNAMIXEL variant changes base and arm actuation/control identities. It is not treated as an interchangeable alias for the Feetech LeKiwi path.",
      "strongestPublishedEvidence": "A 37-row variant-specific list exposing XL430/XL330 actuator choices, U2D2 infrastructure, base plates, compute, cameras, power and separate leader/follower arm hardware.",
      "largestRebuildGap": "Tool and bundle rows remain procurement aggregates, printed-production quantities are outside this table, and no independent assembled-system evidence binds all selections.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected for this variant.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "Manufacturer identity in the BOM supports relationship mapping only; it does not imply ROBOTIS endorsement, current supply or exact equivalence with existing RCI component records.",
      "sources": [
        {
          "id": "dynamixel-lekiwi-bom",
          "title": "DYNAMIXEL LeKiwi bill of materials",
          "url": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/BOM.md",
          "location": "Full DYNAMIXEL variant build tables",
          "revision": "Commit efa608d · 37 selected rows"
        },
        {
          "id": "lekiwi-repository",
          "title": "LeKiwi repository",
          "url": "https://github.com/SIGRobotics-UIUC/LeKiwi/tree/efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "location": "Variant context, design and assembly evidence",
          "revision": "Commit efa608d · Apache-2.0"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "dynamixel-lekiwi",
      "href": "/robots/dynamixel-lekiwi/",
      "morphologyLabel": "Mobile manipulator",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 2,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "dynamixel-lekiwi-1",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Structure:",
          "name": "4\" Omni wheels",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base Structure: configuration boundary.",
          "role": "Mobile Base Structure: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-2",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Structure:",
          "name": "M2 M3 M4 Assorted Screw Set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Mobile Base Structure: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "dynamixel-lekiwi-3",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Structure:",
          "name": "TB3 Waffle Plate Set",
          "itemClass": "mechanical-hardware",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Structure: configuration boundary.",
          "role": "Mobile Base Structure: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-4",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "Raspberry Pi 5 (4GB)",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": "Raspberry Pi",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-5",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "USB camera2",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-6",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "microSD card",
          "itemClass": "storage",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-7",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "U2D2INT",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-8",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Sensors and Compute:",
          "name": "U2D2 PHB",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Sensors and Compute: configuration boundary.",
          "role": "Sensors and Compute: build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-9",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Other",
          "name": "Table Clamp 4pcs",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Other build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "dynamixel-lekiwi-10",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Other",
          "name": "Screwdriver Set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Other configuration boundary.",
          "role": "Other build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-11",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Other",
          "name": "USB-C to USB-A Cable 2 pcs",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Other build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "dynamixel-lekiwi-12",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics",
          "name": "12v 5a Battery",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics configuration boundary.",
          "role": "Mobile Base Electronics build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-13",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics",
          "name": "Lever Wire Connector",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics configuration boundary.",
          "role": "Mobile Base Electronics build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-14",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics",
          "name": "12v 5a DC plug connector",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics configuration boundary.",
          "role": "Mobile Base Electronics build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-15",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics",
          "name": "12v to 5v 5a USB-C converter",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Mobile Base Electronics configuration boundary.",
          "role": "Mobile Base Electronics build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-16",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Mobile Base Electronics",
          "name": "DYNAMIXEL XL430-W250-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "3 units published within the selected Mobile Base Electronics configuration boundary.",
          "role": "Mobile Base Electronics build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-17",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "Dynamixel XL330-M077-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "6 units published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-18",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "XL330 Frame and Idler Wheel 4pcs set1",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-19",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "Waveshare Serial Bus Servo Driver Board",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-20",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "5V Power Supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-21",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "Jumper Wires 340 pcs set (M-M, M-F, F-F)",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-22",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "Table Clamp",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-23",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "Table Clamp 4pcs set2",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "dynamixel-lekiwi-24",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "1.5mm Star/Cruciform Screwdriver 2pcs set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-25",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Leader Arm",
          "name": "USB C-A or C-C 2pcs set3",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Leader Arm configuration boundary.",
          "role": "Leader Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-26",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Dynamixel XL430-W250-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "2 units published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-27",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Dynamixel XL330-M288-T",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "ROBOTIS",
          "modelOrFile": null,
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "4 units published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-28",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "XL330 Frame and Idler Wheel 4pcs set1",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-29",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "XL430 Idler Wheel set",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-30",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Waveshare Serial Bus Servo Driver Board",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": "Waveshare",
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-31",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Voltage Reducer",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-32",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "12V Power Supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-33",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Jumper Wires 340 pcs set (M-M, M-F, F-F)",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-34",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Table Clamp",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-35",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "Table Clamp 4pcs set4",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "The source publishes “1”; RCI preserves this as an aggregate purchase/material boundary rather than an installed-unit count.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row.",
            "Bundle/material quantity is not a flattened installed-part count."
          ]
        },
        {
          "id": "dynamixel-lekiwi-36",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "1.5mm Star/Cruciform Screwdriver 2pcs set4",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        },
        {
          "id": "dynamixel-lekiwi-37",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "sourceId": "dynamixel-lekiwi-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Follower Arm",
          "name": "USB C-A or C-C 2pcs set6",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "1 unit published within the selected Follower Arm configuration boundary.",
          "role": "Follower Arm build item",
          "procurementBoundary": "Regional price and retailer fields remain at the responsibility-party source. RCI does not assert availability, exact retailer equivalence or present-day pricing.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No serialised as-built manifest or independent RCI full-system rebuild confirms this row."
          ]
        }
      ],
      "normalizedBomItemCount": 37,
      "manufacturerRelations": [
        {
          "manufacturerName": "ROBOTIS",
          "manufacturerSlug": "robotis",
          "href": "/manufacturer/robotis/",
          "normalizedItemCount": 7,
          "installedItemCount": 7,
          "itemIds": [
            "dynamixel-lekiwi-3",
            "dynamixel-lekiwi-7",
            "dynamixel-lekiwi-8",
            "dynamixel-lekiwi-16",
            "dynamixel-lekiwi-17",
            "dynamixel-lekiwi-26",
            "dynamixel-lekiwi-27"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        },
        {
          "manufacturerName": "Raspberry Pi",
          "manufacturerSlug": "raspberry-pi",
          "href": "/manufacturer/raspberry-pi/",
          "normalizedItemCount": 1,
          "installedItemCount": 1,
          "itemIds": [
            "dynamixel-lekiwi-4"
          ],
          "relationState": "responsibility-party-bom-mention",
          "exactComponentRecordCount": 0,
          "exactComponentBoundary": "No current RCI exact-component record matches these published BOM model identities exactly; manufacturer linkage is not promoted to component-level equivalence."
        }
      ],
      "componentRelations": [
        {
          "id": "robot-component-dynamixel-lekiwi-mobile-base-xl430-w250-t",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "robotBomItemId": "dynamixel-lekiwi-16",
          "componentId": "cmp-robotis-xl430-w250-t",
          "componentSlug": "robotis-xl430-w250-t",
          "componentName": "ROBOTIS DYNAMIXEL XL430-W250-T",
          "componentOfficialModel": "XL430-W250-T",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "DYNAMIXEL XL430-W250-T",
          "publishedQuantity": 3,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned DYNAMIXEL LeKiwi responsibility-party BOM names DYNAMIXEL XL430-W250-T, links the ROBOTIS product and publishes quantity 3 in the Mobile Base Electronics section. The RCI component catalog independently represents the exact official model XL430-W250-T.",
          "quantityBoundary": "Three units are published for the selected mobile-base-electronics configuration boundary. This row is kept separate from the two-unit follower-arm row and is not generalized to other LeKiwi variants.",
          "evidenceBoundary": "This crosswalk proves one pinned responsibility-party BOM row and one RCI component record refer to XL430-W250-T. It does not prove installed serials, current supply, compatibility, continuous torque, allowable stall operation, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-dynamixel-lekiwi-follower-arm-xl430-w250-t",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "robotBomItemId": "dynamixel-lekiwi-26",
          "componentId": "cmp-robotis-xl430-w250-t",
          "componentSlug": "robotis-xl430-w250-t",
          "componentName": "ROBOTIS DYNAMIXEL XL430-W250-T",
          "componentOfficialModel": "XL430-W250-T",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "Dynamixel XL430-W250-T",
          "publishedQuantity": 2,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned DYNAMIXEL LeKiwi responsibility-party BOM names Dynamixel XL430-W250-T, links the ROBOTIS product and publishes quantity 2 in the Follower Arm section. The RCI component catalog independently represents the exact official model XL430-W250-T.",
          "quantityBoundary": "Two units are published for the selected follower-arm configuration boundary. This row is kept separate from the three-unit mobile-base row; quantities are not silently collapsed across assemblies or variants.",
          "evidenceBoundary": "This crosswalk proves one pinned responsibility-party BOM row and one RCI component record refer to XL430-W250-T. It does not prove installed serials, current supply, compatibility, continuous torque, allowable stall operation, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-dynamixel-lekiwi-leader-arm-xl330-m077-t",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "robotBomItemId": "dynamixel-lekiwi-17",
          "componentId": "cmp-robotis-xl330-m077-t",
          "componentSlug": "robotis-xl330-m077-t",
          "componentName": "ROBOTIS DYNAMIXEL XL330-M077-T",
          "componentOfficialModel": "XL330-M077-T",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "Dynamixel XL330-M077-T",
          "publishedQuantity": 6,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned DYNAMIXEL LeKiwi responsibility-party BOM names Dynamixel XL330-M077-T, links the ROBOTIS product and publishes quantity 6 in the Leader Arm section. The RCI component catalog independently represents the exact M077 gearing suffix from the official ROBOTIS e-Manual.",
          "quantityBoundary": "Six units are published for the selected leader-arm row. The row is not merged with the M288 follower-arm identity, and RCI does not extrapolate the quantity to other LeKiwi configurations.",
          "evidenceBoundary": "This crosswalk proves one pinned responsibility-party BOM row and one exact RCI component record refer to XL330-M077-T. It does not prove installed serials, current supply, compatibility, continuous torque, allowable stall operation, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-dynamixel-lekiwi-follower-arm-xl330-m288-t",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "robotBomItemId": "dynamixel-lekiwi-27",
          "componentId": "cmp-robotis-xl330-m288-t",
          "componentSlug": "robotis-xl330-m288-t",
          "componentName": "ROBOTIS DYNAMIXEL XL330-M288-T",
          "componentOfficialModel": "XL330-M288-T",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "ROBOTIS",
          "publishedPartNumber": "Dynamixel XL330-M288-T",
          "publishedQuantity": 4,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned DYNAMIXEL LeKiwi responsibility-party BOM names Dynamixel XL330-M288-T, links the ROBOTIS product and publishes quantity 4 in the Follower Arm section. The RCI component catalog independently represents the exact M288 gearing suffix from the official ROBOTIS e-Manual.",
          "quantityBoundary": "Four units are published for the selected follower-arm row. The row is not merged with the M077 leader-arm identity, and quantities are not silently combined across actuator variants or assemblies.",
          "evidenceBoundary": "This crosswalk proves one pinned responsibility-party BOM row and one exact RCI component record refer to XL330-M288-T. It does not prove installed serials, current supply, compatibility, continuous torque, allowable stall operation, endorsement or an RCI hardware test.",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "robot-component-dynamixel-lekiwi-raspberry-pi-5",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "robotBomItemId": "dynamixel-lekiwi-4",
          "componentId": "cmp-raspberry-pi-5-family",
          "componentSlug": "raspberry-pi-5-family",
          "componentName": "Raspberry Pi 5",
          "componentOfficialModel": "Raspberry Pi 5",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 4 GB",
          "publishedQuantity": 1,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned DYNAMIXEL LeKiwi Sensors and Compute table publishes one Raspberry Pi 5 with 4 GB RAM. RCI maps the family identity and keeps it attached only to the DYNAMIXEL configuration represented by this BOM.",
          "quantityBoundary": "One board is published for the selected DYNAMIXEL LeKiwi configuration. No serial, receipt, PCB revision or unit-level as-built manifest is available.",
          "evidenceBoundary": "This relation does not prove U2D2, camera or actuator-chain compatibility, power or cooling sufficiency, current availability, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "dynamixel-lekiwi-pi5",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "label": "Raspberry Pi 5 (4 GB) onboard compute",
          "nodeKind": "compute",
          "configurationBoundary": "One Raspberry Pi 5 (4 GB) in the selected DYNAMIXEL LeKiwi BOM and top-plate assembly.",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-4"
          ],
          "identityBoundary": "PCB revision, serial, microSD image, operating system, teleoperation commit checkout and physical USB-port allocation are not frozen."
        },
        {
          "id": "dynamixel-lekiwi-usb-cameras",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "label": "Two USB camera positions",
          "nodeKind": "control",
          "configurationBoundary": "Two USB cameras in the selected BOM with one base-camera and one modified-gripper camera placement described by assembly.",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-5",
            "dynamixel-lekiwi-11"
          ],
          "identityBoundary": "Exact camera option, sensor, lens, cable mapping, descriptor, calibration and mounted transform are not frozen."
        },
        {
          "id": "dynamixel-lekiwi-u2d2-hub",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "label": "U2D2_INT plus U2D2 PHB control/power hub",
          "nodeKind": "control",
          "configurationBoundary": "One U2D2_INT and one U2D2 PHB in the selected BOM, mounted as the base control/power hub assembly.",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-7",
            "dynamixel-lekiwi-8",
            "dynamixel-lekiwi-11"
          ],
          "identityBoundary": "Board revisions, serials, port labels, USB descriptor, firmware and exact jumper/cable identities are not published."
        },
        {
          "id": "dynamixel-lekiwi-base-xl430-triplet",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "label": "Three series-connected XL430-W250-T base drives",
          "nodeKind": "actuation",
          "configurationBoundary": "Three exact XL430-W250-T units in the mobile-base electronics section.",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-16"
          ],
          "identityBoundary": "Serials, firmware, bus IDs, direction settings, wheel mapping, calibration and operating condition are not published."
        },
        {
          "id": "dynamixel-lekiwi-follower-arm",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "label": "Mixed-voltage follower arm actuator chain",
          "nodeKind": "assembly",
          "configurationBoundary": "Follower arm comprising two XL430-W250-T and four XL330-M288-T units, with one published voltage reducer.",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-26",
            "dynamixel-lekiwi-27",
            "dynamixel-lekiwi-31"
          ],
          "identityBoundary": "Serials, firmware, IDs, physical order, reducer setting, joint mapping and individual 5 V versus 12 V actuator allocation beyond assembly prose are not serialised."
        },
        {
          "id": "dynamixel-lekiwi-12v-power",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "label": "12 V battery, distribution and 5 V conversion path",
          "nodeKind": "power",
          "configurationBoundary": "One 12 V / 5 A battery, lever connector, DC plug adapter and 12 V-to-5 V / 5 A USB-C converter in the mobile-base configuration.",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-12",
            "dynamixel-lekiwi-13",
            "dynamixel-lekiwi-14",
            "dynamixel-lekiwi-15",
            "dynamixel-lekiwi-31"
          ],
          "identityBoundary": "Battery capacity, protection, polarity, fuse, wire gauge, converter and reducer behavior, connector current ratings and measured rails are not published."
        }
      ],
      "interfaceRelations": [
        {
          "id": "dynamixel-lekiwi-pi5-u2d2-usb",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-pi5",
          "toNodeId": "dynamixel-lekiwi-u2d2-hub",
          "relationType": "data-control",
          "interfaceLabel": "U2D2 power-hub USB cable connected directly to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-4",
            "dynamixel-lekiwi-7",
            "dynamixel-lekiwi-8",
            "dynamixel-lekiwi-11"
          ],
          "evidenceText": "The official final assembly says the USB cable from the U2D2 power hub can be plugged directly into Raspberry Pi 5; the BOM publishes one Pi, one U2D2_INT, one U2D2 PHB and a USB cable bundle.",
          "unresolved": [
            "Pi port, USB descriptor, serial device, baud rate, protocol configuration and software port mapping are not frozen.",
            "RCI has not enumerated the U2D2 path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "dynamixel-lekiwi-pi5-camera-usb",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-pi5",
          "toNodeId": "dynamixel-lekiwi-usb-cameras",
          "relationType": "data-control",
          "interfaceLabel": "Camera USB cables connected directly to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-4",
            "dynamixel-lekiwi-5",
            "dynamixel-lekiwi-11"
          ],
          "evidenceText": "The official final assembly says camera USB cables can be plugged directly into Raspberry Pi 5; assembly also places a base camera and a camera on the modified gripper.",
          "unresolved": [
            "Camera options, exact Pi ports, cable mapping, USB modes, simultaneous bandwidth, calibration and transforms are not published.",
            "RCI has not streamed either camera."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "dynamixel-lekiwi-u2d2-base-xl430-series",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-u2d2-hub",
          "toNodeId": "dynamixel-lekiwi-base-xl430-triplet",
          "relationType": "data-control",
          "interfaceLabel": "U2D2 hub connected to three XL430 base motors wired in series",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-7",
            "dynamixel-lekiwi-8",
            "dynamixel-lekiwi-16"
          ],
          "evidenceText": "The official assembly connects the three drive-motor wires in series and then connects the remaining motor wire to the U2D2 power hub; the BOM publishes three exact XL430-W250-T base drives.",
          "unresolved": [
            "Series order, IDs, baud rate, return path, cable identities, direction settings and wheel mapping are not frozen.",
            "RCI has not observed bus traffic or wheel motion."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "dynamixel-lekiwi-u2d2-follower-data",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-u2d2-hub",
          "toNodeId": "dynamixel-lekiwi-follower-arm",
          "relationType": "data-control",
          "interfaceLabel": "Follower-arm data wire routed directly to U2D2 power-hub data port",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-7",
            "dynamixel-lekiwi-8",
            "dynamixel-lekiwi-26",
            "dynamixel-lekiwi-27"
          ],
          "evidenceText": "The official final assembly routes the follower-arm data wire directly to the data port on the power hub; the selected BOM publishes the mixed XL430/XL330 follower actuator rows.",
          "unresolved": [
            "Actuator chain order, IDs, baud rate, cable identities, joint mapping and voltage-domain behavior are not frozen.",
            "RCI has not enumerated or moved the follower arm."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "dynamixel-lekiwi-power-pi5-converter",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-12v-power",
          "toNodeId": "dynamixel-lekiwi-pi5",
          "relationType": "power",
          "interfaceLabel": "12 V battery branch through 12 V-to-5 V / 5 A USB-C converter to Raspberry Pi 5",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-4",
            "dynamixel-lekiwi-12",
            "dynamixel-lekiwi-13",
            "dynamixel-lekiwi-15"
          ],
          "evidenceText": "The wiring instruction connects battery leads to the 12 V-to-5 V converter through lever connectors; final assembly connects the 5 V USB-C lead to Raspberry Pi 5.",
          "unresolved": [
            "Polarity, fuse, wire gauge, converter efficiency, transient margin, USB-C behavior and measured Pi input are not published.",
            "RCI has not instrumented this branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "dynamixel-lekiwi-power-u2d2-dc",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-12v-power",
          "toNodeId": "dynamixel-lekiwi-u2d2-hub",
          "relationType": "power",
          "interfaceLabel": "12 V DC barrel branch to the U2D2 control/power-hub assembly",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-7",
            "dynamixel-lekiwi-8",
            "dynamixel-lekiwi-12",
            "dynamixel-lekiwi-13",
            "dynamixel-lekiwi-14"
          ],
          "evidenceText": "The wiring instruction connects battery leads to the DC barrel-plug adapter and mounts the U2D2 hub; final assembly powers the servo motor controller through that DC adapter.",
          "unresolved": [
            "The source uses both U2D2 hub and servo-controller wording without publishing a serialised connector map.",
            "Polarity, fuse, wire gauge, inrush and current margin are not published.",
            "RCI has not powered this branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "dynamixel-lekiwi-power-follower-mixed-voltage",
          "robotRecordId": "bom-audit-dynamixel-lekiwi",
          "fromNodeId": "dynamixel-lekiwi-12v-power",
          "toNodeId": "dynamixel-lekiwi-follower-arm",
          "relationType": "power",
          "interfaceLabel": "Mixed 5 V reduced and 12 V daisy-chain follower-arm power path",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/DynamixelLeKiwi/Assembly.md",
          "sourceBomItemIds": [
            "dynamixel-lekiwi-12",
            "dynamixel-lekiwi-16",
            "dynamixel-lekiwi-26",
            "dynamixel-lekiwi-27",
            "dynamixel-lekiwi-31"
          ],
          "evidenceText": "The official assembly routes the 5 V motor power and ground through a voltage reducer into the power hub and connects the remaining 12 V motor at the arm base to an open port on a base drive motor.",
          "unresolved": [
            "The exact motor-to-voltage assignment, reducer output setting, chain order, cable identities, current sharing and protection are not serialised.",
            "RCI has not measured either voltage domain under arm load."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-qingloong-v25-en",
      "platform": "QingLoong V2.5 English engineering release",
      "responsibilityParty": "loongOpen / Humanoid Robots (Shanghai)",
      "morphology": "humanoid",
      "platformRevisionBoundary": "English-language QingLoong V2.5 tree at OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280.",
      "selectedBomSurface": "QingLoong V2.5 English 2D drawings, 3D files, electrical drawings and open-source introduction",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 178,
      "entryCountBoundary": "178 distinct responsibility-party file paths in the selected immutable source boundary. A file path is an engineering evidence record, not an installed quantity or a unique procured component.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "The repository also contains Chinese-language counterparts and older/unscoped material. This profile selects English V2.5 only and does not count translated duplicates.",
      "strongestPublishedEvidence": "Commit-addressable full-size humanoid part drawings, assemblies and electrical documentation with responsibility-party path identities.",
      "largestRebuildGap": "No flattened procurement BOM, unit quantities, supplier identities, tolerances acceptance record or independently assembled QingLoong unit is established.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "not-published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "qingloong-v25-en-tree",
          "title": "OpenLoong-Hardware — QingLoong V2.5 English release tree",
          "url": "https://github.com/loongOpen/OpenLoong-Hardware/tree/3aeb3759661602092b74c33c271d3052e1a94280/QingLoong%20V2.5/en",
          "location": "178 English release files across 2D drawings, 3D files and electrical/open-source introduction folders",
          "revision": "English-language QingLoong V2.5 tree at OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "qingloong-v25-english-release",
      "href": "/robots/qingloong-v25-english-release/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 4,
      "disclosureCoveragePercent": 46,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "qingloong-v25-en-file-001",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0001-Waist Bracket.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0001-Waist Bracket.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-002",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0002-Front Blind Spot Camera Bracket.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0002-Front Blind Spot Camera Bracket.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-003",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0003-Side Swing Motor Bracket.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0003-Side Swing Motor Bracket.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-004",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0004-Front Swing Motor Bracket.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0004-Front Swing Motor Bracket.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-005",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0005-Waist Support Shaft.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0005-Waist Support Shaft.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-006",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0006-Positioning Pin.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0006-Positioning Pin.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-007",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0007-Positioning Pin Handle.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0007-Positioning Pin Handle.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-008",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0008-Rear Blind Spot Camera Bracket.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0008-Rear Blind Spot Camera Bracket.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-009",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing",
          "name": "TA00-03-0009-Turnover Fixing Plate.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-03-00-Waist Component - 2D Drawing/TA00-03-0009-Turnover Fixing Plate.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-010",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0001 Front Chest Frame - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0001 Front Chest Frame - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-011",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0002 Hook (Right) - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0002 Hook (Right) - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-012",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0003 Hook (Left) - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0003 Hook (Left) - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-013",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0004 Radar Adapter Plate - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0004 Radar Adapter Plate - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-014",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0005 WiFi Heat Dissipation Plate - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0005 WiFi Heat Dissipation Plate - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-015",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0006 Switch Fixing Part - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0006 Switch Fixing Part - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-016",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0007 Main Control Fixing Part - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0007 Main Control Fixing Part - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-017",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0008 Main Control Fixing Part (Sub) - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0008 Main Control Fixing Part (Sub) - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-018",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0009 Cloud Box Support Plate - Drawing 1.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0009 Cloud Box Support Plate - Drawing 1.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-019",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0010 Battery Fixing Plate - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0010 Battery Fixing Plate - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-020",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0011 Battery Fixing Plate (Sub) - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0011 Battery Fixing Plate (Sub) - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-021",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0012 Surround Fixing Part (Rear) - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0012 Surround Fixing Part (Rear) - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-022",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0013 Surround Fixing Part (Rear Mirror) - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0013 Surround Fixing Part (Rear Mirror) - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-023",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0014 Surround Fixing Part (Front) - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0014 Surround Fixing Part (Front) - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-024",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0015 Surround Fixing Part (Front Mirror) - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0015 Surround Fixing Part (Front Mirror) - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-025",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-04-0016 Rear Bracket - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-04-0016 Rear Bracket - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-026",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing",
          "name": "TA00-07-0001 Cylindrical Base - Drawing 1.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-04-00-Chest System - 2D Drawing/TA00-07-0001 Cylindrical Base - Drawing 1.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-027",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0003.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0003.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-028",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0004.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0004.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-029",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0005.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0005.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-030",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0006.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0006.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-031",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0007.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0007.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-032",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0008.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0008.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-033",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0009.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0009.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-034",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0010.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0010.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-035",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0011.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0011.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-036",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0012.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0012.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-037",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0013.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0013.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-038",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0014.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0014.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-039",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing",
          "name": "TA00-07-01-0015.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-07-00-Head Perception System - 2D Drawing/TA00-07-01-0015.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-040",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0001 Knee Joint Pin.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0001 Knee Joint Pin.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-041",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0002 膝关节销轴锁紧螺钉.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0002 膝关节销轴锁紧螺钉.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-042",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0003 - A1 Link Pin C.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0003 - A1 Link Pin C.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-043",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0004 Link Bushing B.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0004 Link Bushing B.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-044",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0006 Ankle Pitch Axis.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0006 Ankle Pitch Axis.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-045",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0007 Ankle Pitch Axis B.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0007 Ankle Pitch Axis B.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-046",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0011 Ankle Pitch Axis Washer.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0011 Ankle Pitch Axis Washer.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-047",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0012 Ankle Pitch Axis Locking Screw.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0012 Ankle Pitch Axis Locking Screw.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-048",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0013 Cross Pitch Axis.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0013 Cross Pitch Axis.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-049",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0014 Cross Side Swing Axis.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0014 Cross Side Swing Axis.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-050",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0015 Cross Side Swing Axis Bushing.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0015 Cross Side Swing Axis Bushing.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-051",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0016 Foot Joint Locking Screw.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0016 Foot Joint Locking Screw.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-052",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0017 Cross Pitch Axis.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0017 Cross Pitch Axis.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-053",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-00-0018 Knee Joint Bearing Washer.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-00-0018 Knee Joint Bearing Washer.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-054",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-01-0001-A1 Hip Joint Turnover Motor Connector.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-01-0001-A1 Hip Joint Turnover Motor Connector.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-055",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-01-0002-A1 Hip Joint Turnover Motor Connector B.PDF",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-01-0002-A1 Hip Joint Turnover Motor Connector B.PDF",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-056",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-01-0003-A1 Turnover Motor Bearing Stopper.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-01-0003-A1 Turnover Motor Bearing Stopper.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-057",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-01-0004 Front Swing Alignment Part.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-01-0004 Front Swing Alignment Part.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-058",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0001-A1 Hip Joint Pitch Motor Flange.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0001-A1 Hip Joint Pitch Motor Flange.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-059",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0002 -A1 Pitch Motor Support Frame.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0002 -A1 Pitch Motor Support Frame.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-060",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0003 -A1 Right Thigh Bracket.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0003 -A1 Right Thigh Bracket.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-061",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0004 Knee Joint Motor Joint Shaft.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0004 Knee Joint Motor Joint Shaft.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-062",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0005 Bearing Locking Screw.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0005 Bearing Locking Screw.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-063",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0006 -A1 Bearing Steel Sleeve.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0006 -A1 Bearing Steel Sleeve.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-064",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0007-A1 Rocking Arm.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0007-A1 Rocking Arm.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-065",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0008 Link Pin.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0008 Link Pin.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-066",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0009 Link Locking Screw B.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0009 Link Locking Screw B.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-067",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0010 Link.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0010 Link.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-068",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0011 Link Bushing.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0011 Link Bushing.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-069",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0012 Support Shaft B.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0012 Support Shaft B.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-070",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-02-0015 Hip Joint Pitch Limit Flange.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-02-0015 Hip Joint Pitch Limit Flange.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-071",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-04-0001-A1 Right Lower Leg Bracket.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-04-0001-A1 Right Lower Leg Bracket.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-072",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-04-0002-A1 Lower Leg Curve.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-04-0002-A1 Lower Leg Curve.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-073",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-04-0003 Lower Leg Pull Rod A.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-04-0003 Lower Leg Pull Rod A.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-074",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-04-0004 Lower Leg Pull Rod C.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-04-0004 Lower Leg Pull Rod C.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-075",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-04-0005-A1 Right Lower Leg Lower Limit.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-04-0005-A1 Right Lower Leg Lower Limit.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-076",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-04-0006-A1 Right Lower Leg Upper Limit.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-04-0006-A1 Right Lower Leg Upper Limit.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-077",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-06 Foot Assembly.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-06 Foot Assembly.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-078",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-06-0001 Foot Body.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-06-0001 Foot Body.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-079",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-06-0002 Foot Bottom Rear Rubber Pad.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-06-0002 Foot Bottom Rear Rubber Pad.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-080",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-06-0003 Foot Bottom Front Rubber Pad.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-06-0003 Foot Bottom Front Rubber Pad.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-081",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing",
          "name": "TA00-12-06-0004 Foot Bottom End Cap.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 2D Drawing/TA00-12-00-Leg and Foot System - 2D Drawing/TA00-12-06-0004 Foot Bottom End Cap.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-082",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0001-Waist Bracket1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0001-Waist Bracket1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-083",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0002-Front Blind-Spot Camera Bracket1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0002-Front Blind-Spot Camera Bracket1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-084",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0003-Front Camera Adapter Block1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0003-Front Camera Adapter Block1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-085",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0004-Waist Rotation Bearing Retaining Ring1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0004-Waist Rotation Bearing Retaining Ring1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-086",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0005-Waist Rotation Motor Shaft1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0005-Waist Rotation Motor Shaft1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-087",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0006-Side Swing Motor Bracket1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0006-Side Swing Motor Bracket1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-088",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0007-Front Swing Motor Bracket1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0007-Front Swing Motor Bracket1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-089",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0008-Waist Side Swing Support Rotating Shaft1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0008-Waist Side Swing Support Rotating Shaft1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-090",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0009-Waist Side Swing Bearing Retaining Ring1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0009-Waist Side Swing Bearing Retaining Ring1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-091",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0010-Waist Side Swing Bearing Locking Screw1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0010-Waist Side Swing Bearing Locking Screw1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-092",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0011-Waist Pitch Bearing Retaining Ring1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0011-Waist Pitch Bearing Retaining Ring1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-093",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0012-Waist Pitch Support Rotating Shaft1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0012-Waist Pitch Support Rotating Shaft1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-094",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0013-Waist Rotation Fixing Bracket1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0013-Waist Rotation Fixing Bracket1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-095",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-03-0014-Waist Rotation Fixing Bracket Mirrored1.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-03-0014-Waist Rotation Fixing Bracket Mirrored1.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-096",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File",
          "name": "TA00-04-01-01-0002-Waist Adapter Plate 105311.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-03-00-Waist Component - 3D File/TA00-04-01-01-0002-Waist Adapter Plate 105311.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-097",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-0001 Arm Lifting Mount.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-0001 Arm Lifting Mount.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-098",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-0003 Rear Support Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-0003 Rear Support Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-099",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-0004 Rear Support Plate (Mirrored).step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-0004 Rear Support Plate (Mirrored).step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-100",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-0005 Front Support Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-0005 Front Support Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-101",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-0006 Front Support Plate (Mirrored).step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-0006 Front Support Plate (Mirrored).step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-102",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-0007 Upper Support Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-0007 Upper Support Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-103",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-01-01-0002 Waist Adapter Plate 1105310604.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-01-01-0002 Waist Adapter Plate 1105310604.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-104",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-02-0001 Top Fixing Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-02-0001 Top Fixing Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-105",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-02-0002 Side Fixing Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-02-0002 Side Fixing Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-106",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-02-0003 Rear Mounting Side Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-02-0003 Rear Mounting Side Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-107",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-02-0004 Rear Mounting Side Plate (Mirrored).step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-02-0004 Rear Mounting Side Plate (Mirrored).step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-108",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-02-0005 Dust Shield.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-02-0005 Dust Shield.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-109",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0001 Head Mounting Base.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0001 Head Mounting Base.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-110",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0002 Mounting Adapter.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0002 Mounting Adapter.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-111",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0003 Radio Fixing Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0003 Radio Fixing Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-112",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0004 Main Controller Fixing Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0004 Main Controller Fixing Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-113",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0005 WIFI Module Heat Sink Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0005 WIFI Module Heat Sink Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-114",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0006 Switch Fixing Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0006 Switch Fixing Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-115",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0007 LiDAR Fixing Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0007 LiDAR Fixing Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-116",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-03-0008 Adapter Box Fixing Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-03-0008 Adapter Box Fixing Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-117",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-04-0001 Front Protection Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-04-0001 Front Protection Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-118",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File",
          "name": "TA00-04-04-0002 Rear Protection Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-04-00-Chest System - 3D File/TA00-04-04-0002 Rear Protection Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-119",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0002 Perception Head Window V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0002 Perception Head Window V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-120",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0004 Front Assembly Plate V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0004 Front Assembly Plate V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-121",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0005 Rear Assembly Plate V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0005 Rear Assembly Plate V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-122",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0006 Frame Base Plate V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0006 Frame Base Plate V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-123",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0007 Side Support V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0007 Side Support V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-124",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0008 Side Support 2 V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0008 Side Support 2 V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-125",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0009 Rotation Output Structural Component V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0009 Rotation Output Structural Component V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-126",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0010 Side Mounting Bracket V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0010 Side Mounting Bracket V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-127",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0011 Frame Top Plate V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0011 Frame Top Plate V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-128",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0012 Binocular Camera Bracket V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0012 Binocular Camera Bracket V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-129",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0013 Pitch Cantilever Structural Component V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0013 Pitch Cantilever Structural Component V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-130",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0014 Pitch Output Structural Component V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0014 Pitch Output Structural Component V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-131",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0015 Pitch Cantilever Connecting Component V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0015 Pitch Cantilever Connecting Component V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-132",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0016 Camera Mount (Left) V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0016 Camera Mount (Left) V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-133",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File",
          "name": "TA00-07-01-0017 Camera Mount (Right) V2.5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-07-00-Head Perception System - 3D File/TA00-07-01-0017 Camera Mount (Right) V2.5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-134",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "1. TA00-12-00-0007 Ankle Pitch Axis B.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/1. TA00-12-00-0007 Ankle Pitch Axis B.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-135",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "1. TA00-12-00-0013 Cross Pitch Axis.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/1. TA00-12-00-0013 Cross Pitch Axis.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-136",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0001 Knee Joint Pin Shaft.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0001 Knee Joint Pin Shaft.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-137",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0002 Knee Joint Pin Locking Screw.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0002 Knee Joint Pin Locking Screw.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-138",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0003 Connecting Rod Pin C.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0003 Connecting Rod Pin C.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-139",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0004 Connecting Rod Bushing B.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0004 Connecting Rod Bushing B.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-140",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0006 Ankle Pitch Axis.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0006 Ankle Pitch Axis.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-141",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0011 Ankle Pitch Axis Shim.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0011 Ankle Pitch Axis Shim.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-142",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0014 Cross Roll Axis.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0014 Cross Roll Axis.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-143",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0015 Cross Roll Axis Bushing.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0015 Cross Roll Axis Bushing.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-144",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0016 Ankle Joint Locking Screw.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0016 Ankle Joint Locking Screw.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-145",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0017 Cross Pitch Axis Joint Bushing.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0017 Cross Pitch Axis Joint Bushing.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-146",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-00-0018 Knee Joint Bearing Shim.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-00-0018 Knee Joint Bearing Shim.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-147",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0001 Hip Pitch Motor Flange.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0001 Hip Pitch Motor Flange.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-148",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0002 Pitch Motor Support Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0002 Pitch Motor Support Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-149",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0003 Right Thigh Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0003 Right Thigh Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-150",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0004 Knee Motor Joint Shaft.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0004 Knee Motor Joint Shaft.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-151",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0005 Bearing Lock Nut.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0005 Bearing Lock Nut.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-152",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0006 Bearing Steel Sleeve.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0006 Bearing Steel Sleeve.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-153",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0007 Rocking Arm.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0007 Rocking Arm.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-154",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0008 Connecting Rod Pin.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0008 Connecting Rod Pin.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-155",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0009 Connecting Rod Locking Screw B.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0009 Connecting Rod Locking Screw B.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-156",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0010 Connecting Rod.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0010 Connecting Rod.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-157",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0011 Connecting Rod Bushing.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0011 Connecting Rod Bushing.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-158",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0012 Support Shaft B.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0012 Support Shaft B.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-159",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-02-0015 Hip Pitch Limit Block.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-02-0015 Hip Pitch Limit Block.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-160",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-04-0001 Right Calf Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-04-0001 Right Calf Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-161",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-04-0002-A1 Calf Crank.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-04-0002-A1 Calf Crank.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-162",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-04-0003 Calf Tie Rod A.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-04-0003 Calf Tie Rod A.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-163",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-04-0004 Calf Tie Rod C.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-04-0004 Calf Tie Rod C.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-164",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-04-0005 Right Calf Lower Limit.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-04-0005 Right Calf Lower Limit.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-165",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-04-0006 Right Calf Upper Limit.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-04-0006 Right Calf Upper Limit.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-166",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-06-0001 Foot Body.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-06-0001 Foot Body.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-167",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-06-0002 Sole Rear Rubber Pad.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-06-0002 Sole Rear Rubber Pad.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-168",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-06-0003 Sole Front Rubber Pad.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-06-0003 Sole Front Rubber Pad.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-169",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File",
          "name": "TA00-12-06-0004 Sole End Cap.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-12-00-Leg and Foot System - 3D File/TA00-12-06-0004 Sole End Cap.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-170",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-03 Waist Bracket Assembly.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-03 Waist Bracket Assembly.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-171",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-04-00 Thoracic Section (Cased).STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-04-00 Thoracic Section (Cased).STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-172",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-04-00 Thoracic Section (Uncased).STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-04-00 Thoracic Section (Uncased).STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-173",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-07 Head Assembly.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-07 Head Assembly.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-174",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-12-00 Leg System (Fully Cased).STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-12-00 Leg System (Fully Cased).STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-175",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-12-00 Leg System (Uncased).STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-12-00 Leg System (Uncased).STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-176",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File",
          "name": "TA00-Qinglong Humanoid Robot - Master Assembly.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-Qinglong Humanoid Robot - Master Assembly.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-177",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - Electrical Drawings and Open Source Content Introduction",
          "name": "zh-Electrical Drawings.pdf",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - Electrical Drawings and Open Source Content Introduction/zh-Electrical Drawings.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "qingloong-v25-en-file-178",
          "robotRecordId": "bom-audit-qingloong-v25-en",
          "sourceId": "qingloong-v25-en-tree",
          "sourceRevision": "loongOpen/OpenLoong-Hardware commit 3aeb3759661602092b74c33c271d3052e1a94280",
          "sourceSection": "QingLoong V2.5/en/QingLoong V2.5 - Electrical Drawings and Open Source Content Introduction",
          "name": "zh-Open Source Content.pdf",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "QingLoong V2.5/en/QingLoong V2.5 - Electrical Drawings and Open Source Content Introduction/zh-Open Source Content.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        }
      ],
      "normalizedBomItemCount": 178,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [],
      "interfaceRelations": []
    },
    {
      "id": "bom-audit-toddlerbot-common-assemblies",
      "platform": "ToddlerBot common assembly production library",
      "responsibilityParty": "ToddlerBot project / Carnegie Mellon University",
      "morphology": "humanoid",
      "platformRevisionBoundary": "Shared assembly library at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e.",
      "selectedBomSurface": "toddlerbot/descriptions/assemblies shared engineering files",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 314,
      "entryCountBoundary": "314 distinct responsibility-party file paths in the selected immutable source boundary. A file path is an engineering evidence record, not an installed quantity or a unique procured component.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Shared assemblies support multiple named ToddlerBot configurations; this profile does not assign every shared file to every configuration.",
      "strongestPublishedEvidence": "A large immutable engineering library of assembly-level geometry and support artifacts shared by the published configuration trees.",
      "largestRebuildGap": "The shared library is not one build selection and publishes no unit-level installed quantities.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "not-published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "toddlerbot-common-assemblies-tree",
          "title": "ToddlerBot common assemblies",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e/toddlerbot/descriptions/assemblies",
          "location": "314 shared assembly and component files",
          "revision": "Shared assembly library at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-common-assemblies",
      "href": "/robots/toddlerbot-common-assemblies/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 4,
      "disclosureCoveragePercent": 46,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-common-assemblies-file-001",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "arm_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/arm_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-002",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "arm_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/arm_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-003",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "arm_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/arm_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-004",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "arm_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/arm_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-005",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "head_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/head_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-006",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-007",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "leg_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/leg_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-008",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "leg_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/leg_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-009",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "leg_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/leg_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-010",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "leg_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/leg_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-011",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_pitch_plate_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_pitch_plate_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-012",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-013",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_rod_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_rod_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-014",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-015",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_rod_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_rod_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-016",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-017",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-018",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-019",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-020",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-021",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "pelvis_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/pelvis_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-022",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-023",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "torso_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/torso_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-024",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-025",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "waist_gear_drive_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/waist_gear_drive_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-026",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-027",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "waist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/waist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-028",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-029",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "waist_gears_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/waist_gears_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-030",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_gripper/assets/merged/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-031",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "arm_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/arm_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-032",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "arm_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/arm_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-033",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "arm_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/arm_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-034",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "arm_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/arm_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-035",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "head_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/head_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-036",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-037",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "leg_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/leg_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-038",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "leg_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/leg_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-039",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "leg_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/leg_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-040",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "leg_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/leg_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-041",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_pitch_plate_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_pitch_plate_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-042",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-043",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_rod_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_rod_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-044",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-045",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_rod_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_rod_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-046",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-047",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-048",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-049",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-050",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-051",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "pelvis_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/pelvis_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-052",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-053",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "torso_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/torso_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-054",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-055",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "waist_gear_drive_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/waist_gear_drive_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-056",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-057",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "waist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/waist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-058",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-059",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "waist_gears_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/waist_gears_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-060",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xc_430_palm/assets/merged/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-061",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "arm_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/arm_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-062",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "arm_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/arm_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-063",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "arm_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/arm_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-064",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "arm_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/arm_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-065",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "head_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/head_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-066",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-067",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "leg_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/leg_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-068",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "leg_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/leg_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-069",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "leg_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/leg_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-070",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "leg_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/leg_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-071",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_pitch_plate_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_pitch_plate_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-072",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-073",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_rod_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_rod_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-074",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-075",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_rod_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_rod_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-076",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-077",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-078",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-079",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-080",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-081",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "pelvis_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/pelvis_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-082",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-083",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "torso_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/torso_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-084",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-085",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "waist_gear_drive_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/waist_gear_drive_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-086",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-087",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "waist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/waist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-088",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-089",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "waist_gears_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/waist_gears_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-090",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_gripper/assets/merged/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-091",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "arm_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/arm_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-092",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "arm_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/arm_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-093",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "arm_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/arm_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-094",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "arm_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/arm_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-095",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "head_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/head_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-096",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-097",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "leg_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/leg_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-098",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "leg_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/leg_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-099",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "leg_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/leg_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-100",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "leg_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/leg_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-101",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_pitch_plate_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_pitch_plate_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-102",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-103",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_rod_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_rod_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-104",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-105",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_rod_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_rod_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-106",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-107",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-108",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-109",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-110",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-111",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "pelvis_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/pelvis_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-112",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-113",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "torso_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/torso_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-114",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-115",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "waist_gear_drive_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/waist_gear_drive_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-116",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-117",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "waist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/waist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-118",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-119",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "waist_gears_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/waist_gears_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-120",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/2xm_430_palm/assets/merged/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-121",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-122",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-123",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-124",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-125",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-126",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-127",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_finger_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_finger_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-128",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_finger_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_finger_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-129",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_finger_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_finger_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-130",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_finger_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_finger_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-131",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-132",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-133",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-134",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "gripper_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/gripper_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-135",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-136",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-137",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-138",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-139",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-140",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-141",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-142",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-143",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-144",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-145",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-146",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged",
          "name": "wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_gripper/assets/merged/wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-147",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-148",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-149",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-150",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-151",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-152",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-153",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "leader_hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/leader_hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-154",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "leader_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/leader_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-155",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-156",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-157",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-158",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-159",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-160",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-161",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-162",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-163",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-164",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-165",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-166",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged",
          "name": "wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_leader/assets/merged/wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-167",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-168",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-169",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-170",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-171",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-172",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-173",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-174",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-175",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-176",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-177",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-178",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-179",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-180",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-181",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-182",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-183",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-184",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-185",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-186",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged",
          "name": "wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_arm_palm/assets/merged/wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-187",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "ankle_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/ankle_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-188",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-189",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-190",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-191",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-192",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-193",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-194",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-195",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-196",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-197",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-198",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-199",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "knee_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/knee_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-200",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged",
          "name": "knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xc_430/assets/merged/knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-201",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "ankle_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/ankle_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-202",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-203",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-204",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-205",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-206",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-207",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-208",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-209",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-210",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-211",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-212",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-213",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "knee_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/knee_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-214",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged",
          "name": "knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/left_leg_2xm_430/assets/merged/knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-215",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-216",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-217",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-218",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-219",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-220",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-221",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_finger_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_finger_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-222",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_finger_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_finger_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-223",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_finger_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_finger_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-224",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_finger_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_finger_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-225",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-226",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-227",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-228",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "gripper_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/gripper_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-229",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-230",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-231",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-232",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-233",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-234",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-235",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-236",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-237",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-238",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-239",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-240",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged",
          "name": "wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_gripper/assets/merged/wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-241",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-242",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-243",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-244",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-245",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-246",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-247",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "leader_hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/leader_hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-248",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "leader_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/leader_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-249",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-250",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-251",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-252",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-253",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-254",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-255",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-256",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-257",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-258",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-259",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-260",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged",
          "name": "wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_leader/assets/merged/wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-261",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-262",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-263",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-264",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-265",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-266",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-267",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-268",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-269",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-270",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-271",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-272",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-273",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-274",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-275",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-276",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-277",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-278",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-279",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-280",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged",
          "name": "wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_arm_palm/assets/merged/wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-281",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "ankle_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/ankle_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-282",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-283",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-284",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-285",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-286",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-287",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-288",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-289",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-290",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-291",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-292",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-293",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "knee_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/knee_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-294",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged",
          "name": "knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xc_430/assets/merged/knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-295",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "ankle_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/ankle_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-296",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-297",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-298",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-299",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-300",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-301",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-302",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-303",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_yaw_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_yaw_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-304",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-305",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-306",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-307",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "knee_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/knee_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-308",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged",
          "name": "knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/right_leg_2xm_430/assets/merged/knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-309",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged",
          "name": "arm_2_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged/arm_2_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-310",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged",
          "name": "arm_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged/arm_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-311",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged",
          "name": "arm_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged/arm_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-312",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged",
          "name": "arm_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged/arm_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-313",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged",
          "name": "torso_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged/torso_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-common-assemblies-file-314",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/assemblies/teleop_leader/assets/merged/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        }
      ],
      "normalizedBomItemCount": 314,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "toddlerbot-config-folders-separated",
          "robotRecordId": "bom-audit-toddlerbot-common-assemblies",
          "relationType": "revision-separation",
          "from": "ToddlerBot shared assemblies",
          "to": "2×M, 2×C, gripper and teleoperation-leader configuration folders",
          "effectiveBoundary": "The pinned repository publishes common assemblies and five selected configuration trees as separate paths.",
          "systemImpact": "Shared engineering assets cannot be counted as installed in every actuator/gripper/leader configuration without a build selection.",
          "evidenceState": "rci-source-boundary",
          "sourceId": "toddlerbot-common-assemblies-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "unresolved": "No responsibility-party flattened per-configuration file manifest establishes shared-file inclusion for each build."
        }
      ],
      "topologyNodes": [],
      "interfaceRelations": []
    },
    {
      "id": "bom-audit-toddlerbot-2xm",
      "platform": "ToddlerBot 2×M configuration files",
      "responsibilityParty": "ToddlerBot project / Carnegie Mellon University",
      "morphology": "humanoid",
      "platformRevisionBoundary": "toddlerbot_2xm configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e.",
      "selectedBomSurface": "toddlerbot/descriptions/toddlerbot_2xm configuration-specific engineering files plus selected pinned system and actuator-composition rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 79,
      "entryCountBoundary": "79 selected responsibility-party records combine immutable configuration paths with bounded system rows. File paths are not installed quantities; actuator counts are active configuration assignments after default/config deep merge and fixed-XML filtering, not serialised as-built evidence.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Configuration-specific folders are kept separate. RCI does not merge actuator, gripper or leader variants into one fictional build.",
      "strongestPublishedEvidence": "Immutable configuration geometry plus active fixed-XML-filtered actuator composition; full-body variants also expose the pinned J4012/Orin NX, serial fan-out, IMU, stereo-camera and bounded power architecture.",
      "largestRebuildGap": "No cryptographically frozen full procurement sheet, exact motor suffix set, communication-board revision, as-built serial evidence, powered acceptance record or independent rebuild closes the configuration.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "toddlerbot-toddlerbot_2xm-tree",
          "title": "ToddlerBot toddlerbot_2xm configuration tree",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "location": "69 configuration-specific files plus selected rows derived from default.yml, configuration robot.yml, fixed XML and pinned hardware/software documentation; shared geometry remains separate",
          "revision": "toddlerbot_2xm configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-2xm",
      "href": "/robots/toddlerbot-2xm/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-2xm-file-001",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-002",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_0.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_0.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-003",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_1.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_1.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-004",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_10.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_10.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-005",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_11.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_11.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-006",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_12.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_12.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-007",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_13.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_13.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-008",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_14.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_14.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-009",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_15.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_15.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-010",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_16.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_16.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-011",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_17.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_17.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-012",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_18.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_18.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-013",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_19.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_19.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-014",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_2.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_2.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-015",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_20.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_20.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-016",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_3.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_3.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-017",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_4.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_4.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-018",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_5.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_5.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-019",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_6.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_6.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-020",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_7.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_7.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-021",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_8.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_8.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-022",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart",
          "name": "cart_part_9.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/cart/cart_part_9.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-023",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-024",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-025",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-026",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-027",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-028",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-029",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-030",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-031",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-032",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-033",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-034",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-035",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-036",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-037",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-038",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-039",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-040",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-041",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "left_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/left_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-042",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-043",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-044",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-045",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-046",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-047",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-048",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-049",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-050",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-051",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-052",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-053",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-054",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-055",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-056",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-057",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-058",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-059",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-060",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-061",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-062",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-063",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-064",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-065",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "right_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/right_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-066",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-067",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-068",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-file-069",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm/assets",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm/assets/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-01",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC330 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC330 family",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Six active XC330 model assignments survive the fixed-XML filter after deep-merging default.yml with toddlerbot_2xm/robot.yml.",
          "role": "Neck, waist and hip-yaw actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-02",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XM430-W350 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XM430-W350 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The 2×M override replaces four default hip positions with XM430-W350 family assignments; suffix/order code and physical motors are not frozen.",
          "role": "2×M hip pitch/roll actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-03",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XM430-W210 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XM430-W210 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XM430-W210 family assignments appear after configuration merge and fixed-XML filtering.",
          "role": "Knee and ankle-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-04",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC430 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XC430 family assignments appear after configuration merge and fixed-XML filtering.",
          "role": "Ankle-roll and shoulder-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-05",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "2XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XC430 family",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve active arm positions are overridden to the 2XC430 family; the source does not publish a complete order-code suffix or serialised as-built bank.",
          "role": "2×M arm actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-06",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "reComputer J4012 / Jetson Orin NX 16GB",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "reComputer Industrial J4012 / Jetson Orin NX 16GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned ToddlerBot Jetson guide recommends Jetson Orin NX 16GB and links the J4012 flashing path; this does not establish one purchased SKU, module serial or carrier-board revision.",
          "role": "On-board compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-07",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Eight-channel communication board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned setup installs the CH9344 serial driver for the eight-channel communication board; exact assembled PCB identity, USB topology and port-to-motor-group mapping are not frozen.",
          "role": "Jetson-to-Dynamixel serial fan-out",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-08",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "BNO08X I²C IMU pair",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "BNO08X family",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned code initializes addresses 0x4A and 0x4B; exact BNO080/BNO085 orderable identity, breakout revisions and physical population are not established.",
          "role": "Top and bottom inertial sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-09",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Stereo fisheye camera pair",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned software implements left and right V4L2 camera paths, but camera manufacturer, sensor, USB descriptors, calibration and installed units are not frozen.",
          "role": "Left/right visual sensing and stereo-depth input",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-item-10",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "sourceId": "toddlerbot-toddlerbot_2xm-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Battery and Distro Board v8 power boundary",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The pinned build flow requires the battery and assembled PCB, but does not cryptographically bind the mutable procurement sheet, pack identity, branch ratings or one as-built harness to this commit.",
          "role": "Compute, sensing and actuator energy distribution",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 79,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "toddlerbot-2xm-j4012-orin-nx",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "label": "Recommended J4012 / Jetson Orin NX 16GB on-board compute",
          "nodeKind": "compute",
          "configurationBoundary": "ToddlerBot 2×M at the pinned commit; the responsibility-party Jetson guide recommends Orin NX 16GB and the reComputer J4012 flashing path.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-06"
          ],
          "identityBoundary": "Recommendation and flashing path do not bind one J4012 SKU, carrier revision, module serial, storage image, JetPack state or physical computer."
        },
        {
          "id": "toddlerbot-2xm-eight-channel-serial",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "label": "Eight-channel communication-board boundary",
          "nodeKind": "control",
          "configurationBoundary": "Pinned setup installs the WCH CH9344 serial driver for the eight-channel board used to access Dynamixel motors.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-07"
          ],
          "identityBoundary": "PCB revision, population, CH9344 variant, USB descriptor, channel allocation, latency setting, cabling and physical board are not frozen."
        },
        {
          "id": "toddlerbot-2xm-actuator-bank",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "label": "ToddlerBot 2×M active Dynamixel configuration",
          "nodeKind": "actuation",
          "configurationBoundary": "30 active positions: 6 XC330, 4 XM430-W350, 4 XM430-W210, 4 XC430 and 12 2XC430 family assignments.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-01",
            "toddlerbot-2xm-item-02",
            "toddlerbot-2xm-item-03",
            "toddlerbot-2xm-item-04",
            "toddlerbot-2xm-item-05"
          ],
          "identityBoundary": "Counts are configuration assignments after deep-merging default.yml and robot.yml and filtering against fixed XML; family names do not prove complete order codes, serials, IDs, firmware or installed units."
        },
        {
          "id": "toddlerbot-2xm-dual-bno08x",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "label": "Dual BNO08X I²C sensing boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned sensing code initializes top and bottom BNO08X-family devices at I²C addresses 0x4A and 0x4B.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-08"
          ],
          "identityBoundary": "Exact BNO080/BNO085 identity, breakout revision, bus wiring, calibration, coordinate frame, timestamps and physical population are not frozen or observed."
        },
        {
          "id": "toddlerbot-2xm-stereo-fisheye",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "label": "Left/right fisheye camera boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned camera and Jetson setup implement left/right V4L2 paths and install software required for fisheye cameras and stereo depth.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-09"
          ],
          "identityBoundary": "Camera model, sensor, lens, USB topology, device numbering stability, calibration, synchronization and measured image/depth performance are not frozen."
        },
        {
          "id": "toddlerbot-2xm-battery-distro-power",
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "label": "Battery and Distro Board v8 power boundary",
          "nodeKind": "power",
          "configurationBoundary": "Pinned build flow installs the battery and assembled PCB in the torso before the standing test.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-10"
          ],
          "identityBoundary": "The mutable procurement sheet is not commit-frozen; pack identity, cells, capacity, protection, Distro Board unit, connectors, rail allocation, current budget and physical harness are unresolved."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-j4012-eight-channel-serial",
          "fromNodeId": "toddlerbot-2xm-j4012-orin-nx",
          "toNodeId": "toddlerbot-2xm-eight-channel-serial",
          "relationType": "data-control",
          "interfaceLabel": "USB serial fan-out through CH9344 driver boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-06",
            "toddlerbot-2xm-item-07"
          ],
          "evidenceText": "The pinned Jetson guide identifies the J4012/Orin NX path and installs ch9344ser specifically for the eight-channel communication board.",
          "unresolved": [
            "USB connector, hub topology, board revision, descriptor, channel enumeration, latency state and captured serial traffic are not frozen.",
            "RCI has not connected or enumerated this path."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-serial-dynamixel-bank",
          "fromNodeId": "toddlerbot-2xm-eight-channel-serial",
          "toNodeId": "toddlerbot-2xm-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "Dynamixel Protocol 2.0 serial control/feedback boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-01",
            "toddlerbot-2xm-item-02",
            "toddlerbot-2xm-item-03",
            "toddlerbot-2xm-item-04",
            "toddlerbot-2xm-item-05",
            "toddlerbot-2xm-item-07"
          ],
          "evidenceText": "Pinned code uses the Dynamixel SDK Protocol 2.0 path, while the merged configuration and fixed XML establish the active family-level actuator positions for this exact named variant.",
          "unresolved": [
            "Port-to-body-group allocation, baud rate for the assembled robot, motor order, IDs, EEPROM, firmware, termination, cable topology and successful bulk read/write are not frozen.",
            "Family labels are not complete orderable suffixes or physical inventory."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-dual-imu-i2c",
          "fromNodeId": "toddlerbot-2xm-dual-bno08x",
          "toNodeId": "toddlerbot-2xm-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "I²C BNO08X data at addresses 0x4A and 0x4B",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-06",
            "toddlerbot-2xm-item-08"
          ],
          "evidenceText": "Pinned sensing code opens two BNO08X-family devices over I²C and the Jetson setup adds the operating user to the i2c group.",
          "unresolved": [
            "I²C bus number, pins, cable, pull-ups, exact device identity, report configuration, calibration, time base and physical readback are not frozen.",
            "RCI has not captured either IMU stream."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-stereo-camera-v4l2",
          "fromNodeId": "toddlerbot-2xm-stereo-fisheye",
          "toNodeId": "toddlerbot-2xm-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "Two V4L2 camera paths into on-board compute",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-06",
            "toddlerbot-2xm-item-09"
          ],
          "evidenceText": "Pinned setup installs v4l-utils/ffmpeg for fisheye cameras and pinned code opens left and right V4L2 paths for stereo processing.",
          "unresolved": [
            "Camera SKUs, USB branch, stable device mapping, format, resolution, frame rate, synchronization, intrinsics/extrinsics and measured depth quality are not frozen.",
            "RCI has not opened either camera."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-power-j4012",
          "fromNodeId": "toddlerbot-2xm-battery-distro-power",
          "toNodeId": "toddlerbot-2xm-j4012-orin-nx",
          "relationType": "power",
          "interfaceLabel": "Distro/Jetson compute-power branch",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-06",
            "toddlerbot-2xm-item-10"
          ],
          "evidenceText": "The fixed Distro BOM labels a power output for Jetson and the pinned build flow installs the battery, PCB and prepared Jetson in the torso.",
          "unresolved": [
            "Battery SKU, input voltage under load, connector/pinout, branch protection, J4012 input setting, current margin, startup behavior and measured rail are not frozen.",
            "RCI has not applied power."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-power-actuator-bank",
          "fromNodeId": "toddlerbot-2xm-battery-distro-power",
          "toNodeId": "toddlerbot-2xm-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "Distro Board v8 actuator-power distribution boundary",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-item-01",
            "toddlerbot-2xm-item-02",
            "toddlerbot-2xm-item-03",
            "toddlerbot-2xm-item-04",
            "toddlerbot-2xm-item-05",
            "toddlerbot-2xm-item-10"
          ],
          "evidenceText": "The responsibility-party build places battery and assembled PCB into the torso before standing operation, and the Distro fabrication surface exposes the robot power-distribution role.",
          "unresolved": [
            "Exact rail voltage, channel allocation, connector pinout, current budget, fuse/protection, ground return, voltage drop, thermal margin and simultaneous actuator load are not frozen.",
            "RCI has not energized any actuator branch."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-toddlerbot-2xc",
      "platform": "ToddlerBot 2×C configuration files",
      "responsibilityParty": "ToddlerBot project / Carnegie Mellon University",
      "morphology": "humanoid",
      "platformRevisionBoundary": "toddlerbot_2xc configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e.",
      "selectedBomSurface": "toddlerbot/descriptions/toddlerbot_2xc configuration-specific engineering files plus selected pinned system and actuator-composition rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 79,
      "entryCountBoundary": "79 selected responsibility-party records combine immutable configuration paths with bounded system rows. File paths are not installed quantities; actuator counts are active configuration assignments after default/config deep merge and fixed-XML filtering, not serialised as-built evidence.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Configuration-specific folders are kept separate. RCI does not merge actuator, gripper or leader variants into one fictional build.",
      "strongestPublishedEvidence": "Immutable configuration geometry plus active fixed-XML-filtered actuator composition; full-body variants also expose the pinned J4012/Orin NX, serial fan-out, IMU, stereo-camera and bounded power architecture.",
      "largestRebuildGap": "No cryptographically frozen full procurement sheet, exact motor suffix set, communication-board revision, as-built serial evidence, powered acceptance record or independent rebuild closes the configuration.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "toddlerbot-toddlerbot_2xc-tree",
          "title": "ToddlerBot toddlerbot_2xc configuration tree",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "location": "69 configuration-specific files plus selected rows derived from default.yml, configuration robot.yml, fixed XML and pinned hardware/software documentation; shared geometry remains separate",
          "revision": "toddlerbot_2xc configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-2xc",
      "href": "/robots/toddlerbot-2xc/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-2xc-file-001",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-002",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_0.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_0.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-003",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_1.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_1.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-004",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_10.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_10.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-005",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_11.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_11.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-006",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_12.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_12.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-007",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_13.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_13.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-008",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_14.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_14.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-009",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_15.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_15.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-010",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_16.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_16.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-011",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_17.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_17.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-012",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_18.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_18.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-013",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_19.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_19.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-014",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_2.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_2.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-015",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_20.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_20.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-016",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_3.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_3.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-017",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_4.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_4.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-018",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_5.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_5.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-019",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_6.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_6.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-020",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_7.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_7.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-021",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_8.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_8.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-022",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart",
          "name": "cart_part_9.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/cart/cart_part_9.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-023",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-024",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-025",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-026",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-027",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-028",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-029",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-030",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-031",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-032",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-033",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-034",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-035",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-036",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-037",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-038",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-039",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-040",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-041",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "left_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/left_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-042",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-043",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-044",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-045",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-046",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-047",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-048",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-049",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-050",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-051",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-052",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-053",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-054",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-055",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-056",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-057",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-058",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-059",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-060",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-061",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-062",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-063",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-064",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-065",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "right_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/right_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-066",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-067",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-068",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-file-069",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc/assets",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc/assets/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-01",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC330 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC330 family",
          "variant": null,
          "quantity": 6,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Six active XC330 family assignments survive the fixed-XML filter.",
          "role": "Neck, waist and hip-yaw actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-02",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "2XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XC430 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active 2XC430 family assignments survive the fixed-XML filter; complete order-code suffixes and physical modules are not fixed.",
          "role": "2×C hip pitch/roll actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-03",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XM430-W210 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XM430-W210 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XM430-W210 family assignments survive the fixed-XML filter.",
          "role": "Knee and ankle-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-04",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC430 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XC430 family assignments survive the fixed-XML filter.",
          "role": "Ankle-roll and shoulder-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-05",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "2XL430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XL430 family",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve active 2XL430 family assignments survive the fixed-XML filter; complete order-code suffixes and serialised units are not fixed.",
          "role": "2×C arm actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-06",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "reComputer J4012 / Jetson Orin NX 16GB",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "reComputer Industrial J4012 / Jetson Orin NX 16GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned ToddlerBot Jetson guide recommends Jetson Orin NX 16GB and links the J4012 flashing path; this does not establish one purchased SKU, module serial or carrier-board revision.",
          "role": "On-board compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-07",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Eight-channel communication board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned setup installs the CH9344 serial driver for the eight-channel communication board; exact assembled PCB identity, USB topology and port-to-motor-group mapping are not frozen.",
          "role": "Jetson-to-Dynamixel serial fan-out",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-08",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "BNO08X I²C IMU pair",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "BNO08X family",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned code initializes addresses 0x4A and 0x4B; exact BNO080/BNO085 orderable identity, breakout revisions and physical population are not established.",
          "role": "Top and bottom inertial sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-09",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Stereo fisheye camera pair",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned software implements left and right V4L2 camera paths, but camera manufacturer, sensor, USB descriptors, calibration and installed units are not frozen.",
          "role": "Left/right visual sensing and stereo-depth input",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-item-10",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "sourceId": "toddlerbot-toddlerbot_2xc-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Battery and Distro Board v8 power boundary",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The pinned build flow requires the battery and assembled PCB, but does not cryptographically bind the mutable procurement sheet, pack identity, branch ratings or one as-built harness to this commit.",
          "role": "Compute, sensing and actuator energy distribution",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 79,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "toddlerbot-2xc-j4012-orin-nx",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "label": "Recommended J4012 / Jetson Orin NX 16GB on-board compute",
          "nodeKind": "compute",
          "configurationBoundary": "ToddlerBot 2×C at the pinned commit; the responsibility-party Jetson guide recommends Orin NX 16GB and the reComputer J4012 flashing path.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-06"
          ],
          "identityBoundary": "Recommendation and flashing path do not bind one J4012 SKU, carrier revision, module serial, storage image, JetPack state or physical computer."
        },
        {
          "id": "toddlerbot-2xc-eight-channel-serial",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "label": "Eight-channel communication-board boundary",
          "nodeKind": "control",
          "configurationBoundary": "Pinned setup installs the WCH CH9344 serial driver for the eight-channel board used to access Dynamixel motors.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-07"
          ],
          "identityBoundary": "PCB revision, population, CH9344 variant, USB descriptor, channel allocation, latency setting, cabling and physical board are not frozen."
        },
        {
          "id": "toddlerbot-2xc-actuator-bank",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "label": "ToddlerBot 2×C active Dynamixel configuration",
          "nodeKind": "actuation",
          "configurationBoundary": "30 active positions: 6 XC330, 4 2XC430, 4 XM430-W210, 4 XC430 and 12 2XL430 family assignments.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-01",
            "toddlerbot-2xc-item-02",
            "toddlerbot-2xc-item-03",
            "toddlerbot-2xc-item-04",
            "toddlerbot-2xc-item-05"
          ],
          "identityBoundary": "Counts are configuration assignments after deep-merging default.yml and robot.yml and filtering against fixed XML; family names do not prove complete order codes, serials, IDs, firmware or installed units."
        },
        {
          "id": "toddlerbot-2xc-dual-bno08x",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "label": "Dual BNO08X I²C sensing boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned sensing code initializes top and bottom BNO08X-family devices at I²C addresses 0x4A and 0x4B.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-08"
          ],
          "identityBoundary": "Exact BNO080/BNO085 identity, breakout revision, bus wiring, calibration, coordinate frame, timestamps and physical population are not frozen or observed."
        },
        {
          "id": "toddlerbot-2xc-stereo-fisheye",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "label": "Left/right fisheye camera boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned camera and Jetson setup implement left/right V4L2 paths and install software required for fisheye cameras and stereo depth.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-09"
          ],
          "identityBoundary": "Camera model, sensor, lens, USB topology, device numbering stability, calibration, synchronization and measured image/depth performance are not frozen."
        },
        {
          "id": "toddlerbot-2xc-battery-distro-power",
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "label": "Battery and Distro Board v8 power boundary",
          "nodeKind": "power",
          "configurationBoundary": "Pinned build flow installs the battery and assembled PCB in the torso before the standing test.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-10"
          ],
          "identityBoundary": "The mutable procurement sheet is not commit-frozen; pack identity, cells, capacity, protection, Distro Board unit, connectors, rail allocation, current budget and physical harness are unresolved."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-j4012-eight-channel-serial",
          "fromNodeId": "toddlerbot-2xc-j4012-orin-nx",
          "toNodeId": "toddlerbot-2xc-eight-channel-serial",
          "relationType": "data-control",
          "interfaceLabel": "USB serial fan-out through CH9344 driver boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-06",
            "toddlerbot-2xc-item-07"
          ],
          "evidenceText": "The pinned Jetson guide identifies the J4012/Orin NX path and installs ch9344ser specifically for the eight-channel communication board.",
          "unresolved": [
            "USB connector, hub topology, board revision, descriptor, channel enumeration, latency state and captured serial traffic are not frozen.",
            "RCI has not connected or enumerated this path."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-serial-dynamixel-bank",
          "fromNodeId": "toddlerbot-2xc-eight-channel-serial",
          "toNodeId": "toddlerbot-2xc-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "Dynamixel Protocol 2.0 serial control/feedback boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-01",
            "toddlerbot-2xc-item-02",
            "toddlerbot-2xc-item-03",
            "toddlerbot-2xc-item-04",
            "toddlerbot-2xc-item-05",
            "toddlerbot-2xc-item-07"
          ],
          "evidenceText": "Pinned code uses the Dynamixel SDK Protocol 2.0 path, while the merged configuration and fixed XML establish the active family-level actuator positions for this exact named variant.",
          "unresolved": [
            "Port-to-body-group allocation, baud rate for the assembled robot, motor order, IDs, EEPROM, firmware, termination, cable topology and successful bulk read/write are not frozen.",
            "Family labels are not complete orderable suffixes or physical inventory."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-dual-imu-i2c",
          "fromNodeId": "toddlerbot-2xc-dual-bno08x",
          "toNodeId": "toddlerbot-2xc-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "I²C BNO08X data at addresses 0x4A and 0x4B",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-06",
            "toddlerbot-2xc-item-08"
          ],
          "evidenceText": "Pinned sensing code opens two BNO08X-family devices over I²C and the Jetson setup adds the operating user to the i2c group.",
          "unresolved": [
            "I²C bus number, pins, cable, pull-ups, exact device identity, report configuration, calibration, time base and physical readback are not frozen.",
            "RCI has not captured either IMU stream."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-stereo-camera-v4l2",
          "fromNodeId": "toddlerbot-2xc-stereo-fisheye",
          "toNodeId": "toddlerbot-2xc-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "Two V4L2 camera paths into on-board compute",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-06",
            "toddlerbot-2xc-item-09"
          ],
          "evidenceText": "Pinned setup installs v4l-utils/ffmpeg for fisheye cameras and pinned code opens left and right V4L2 paths for stereo processing.",
          "unresolved": [
            "Camera SKUs, USB branch, stable device mapping, format, resolution, frame rate, synchronization, intrinsics/extrinsics and measured depth quality are not frozen.",
            "RCI has not opened either camera."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-power-j4012",
          "fromNodeId": "toddlerbot-2xc-battery-distro-power",
          "toNodeId": "toddlerbot-2xc-j4012-orin-nx",
          "relationType": "power",
          "interfaceLabel": "Distro/Jetson compute-power branch",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-06",
            "toddlerbot-2xc-item-10"
          ],
          "evidenceText": "The fixed Distro BOM labels a power output for Jetson and the pinned build flow installs the battery, PCB and prepared Jetson in the torso.",
          "unresolved": [
            "Battery SKU, input voltage under load, connector/pinout, branch protection, J4012 input setting, current margin, startup behavior and measured rail are not frozen.",
            "RCI has not applied power."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-power-actuator-bank",
          "fromNodeId": "toddlerbot-2xc-battery-distro-power",
          "toNodeId": "toddlerbot-2xc-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "Distro Board v8 actuator-power distribution boundary",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-item-01",
            "toddlerbot-2xc-item-02",
            "toddlerbot-2xc-item-03",
            "toddlerbot-2xc-item-04",
            "toddlerbot-2xc-item-05",
            "toddlerbot-2xc-item-10"
          ],
          "evidenceText": "The responsibility-party build places battery and assembled PCB into the torso before standing operation, and the Distro fabrication surface exposes the robot power-distribution role.",
          "unresolved": [
            "Exact rail voltage, channel allocation, connector pinout, current budget, fuse/protection, ground return, voltage drop, thermal margin and simultaneous actuator load are not frozen.",
            "RCI has not energized any actuator branch."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-toddlerbot-2xm-gripper",
      "platform": "ToddlerBot 2×M gripper configuration files",
      "responsibilityParty": "ToddlerBot project / Carnegie Mellon University",
      "morphology": "humanoid",
      "platformRevisionBoundary": "toddlerbot_2xm_gripper configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e.",
      "selectedBomSurface": "toddlerbot/descriptions/toddlerbot_2xm_gripper configuration-specific engineering files plus selected pinned system and actuator-composition rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 63,
      "entryCountBoundary": "63 selected responsibility-party records combine immutable configuration paths with bounded system rows. File paths are not installed quantities; actuator counts are active configuration assignments after default/config deep merge and fixed-XML filtering, not serialised as-built evidence.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Configuration-specific folders are kept separate. RCI does not merge actuator, gripper or leader variants into one fictional build.",
      "strongestPublishedEvidence": "Immutable configuration geometry plus active fixed-XML-filtered actuator composition; full-body variants also expose the pinned J4012/Orin NX, serial fan-out, IMU, stereo-camera and bounded power architecture.",
      "largestRebuildGap": "No cryptographically frozen full procurement sheet, exact motor suffix set, communication-board revision, as-built serial evidence, powered acceptance record or independent rebuild closes the configuration.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "title": "ToddlerBot toddlerbot_2xm_gripper configuration tree",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "location": "53 configuration-specific files plus selected rows derived from default.yml, configuration robot.yml, fixed XML and pinned hardware/software documentation; shared geometry remains separate",
          "revision": "toddlerbot_2xm_gripper configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-2xm-gripper",
      "href": "/robots/toddlerbot-2xm-gripper/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-2xm-gripper-file-001",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-002",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-003",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-004",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-005",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-006",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-007",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-008",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_gripper_finger_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_gripper_finger_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-009",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_gripper_finger_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_gripper_finger_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-010",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_gripper_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_gripper_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-011",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_gripper_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_gripper_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-012",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-013",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-014",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-015",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-016",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-017",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-018",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-019",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-020",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-021",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-022",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "left_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/left_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-023",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-024",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-025",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-026",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-027",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-028",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-029",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-030",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-031",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-032",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-033",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-034",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-035",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_gripper_finger_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_gripper_finger_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-036",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_gripper_finger_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_gripper_finger_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-037",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_gripper_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_gripper_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-038",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_gripper_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_gripper_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-039",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-040",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-041",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-042",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-043",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-044",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-045",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-046",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-047",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-048",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-049",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "right_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/right_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-050",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-051",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-052",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-file-053",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xm_gripper/assets/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-01",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC330 actuator positions including two grippers",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC330 family",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Eight active XC330 family assignments include two gripper-rack positions in the gripper fixed XML.",
          "role": "Neck, waist, hip-yaw and bilateral gripper-rack actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-02",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XM430-W350 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XM430-W350 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XM430-W350 family assignments are fixed by the 2×M override.",
          "role": "2×M hip pitch/roll actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-03",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XM430-W210 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XM430-W210 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XM430-W210 family assignments survive fixed-XML filtering.",
          "role": "Knee and ankle-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-04",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC430 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XC430 family assignments survive fixed-XML filtering.",
          "role": "Ankle-roll and shoulder-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-05",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "2XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XC430 family",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve active 2XC430 family assignments are fixed by the configuration override.",
          "role": "2×M arm actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-06",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "reComputer J4012 / Jetson Orin NX 16GB",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "reComputer Industrial J4012 / Jetson Orin NX 16GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned ToddlerBot Jetson guide recommends Jetson Orin NX 16GB and links the J4012 flashing path; this does not establish one purchased SKU, module serial or carrier-board revision.",
          "role": "On-board compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-07",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Eight-channel communication board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned setup installs the CH9344 serial driver for the eight-channel communication board; exact assembled PCB identity, USB topology and port-to-motor-group mapping are not frozen.",
          "role": "Jetson-to-Dynamixel serial fan-out",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-08",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "BNO08X I²C IMU pair",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "BNO08X family",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned code initializes addresses 0x4A and 0x4B; exact BNO080/BNO085 orderable identity, breakout revisions and physical population are not established.",
          "role": "Top and bottom inertial sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-09",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Stereo fisheye camera pair",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned software implements left and right V4L2 camera paths, but camera manufacturer, sensor, USB descriptors, calibration and installed units are not frozen.",
          "role": "Left/right visual sensing and stereo-depth input",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xm-gripper-item-10",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xm_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Battery and Distro Board v8 power boundary",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The pinned build flow requires the battery and assembled PCB, but does not cryptographically bind the mutable procurement sheet, pack identity, branch ratings or one as-built harness to this commit.",
          "role": "Compute, sensing and actuator energy distribution",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 63,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "toddlerbot-2xm-gripper-j4012-orin-nx",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "label": "Recommended J4012 / Jetson Orin NX 16GB on-board compute",
          "nodeKind": "compute",
          "configurationBoundary": "ToddlerBot 2×M gripper at the pinned commit; the responsibility-party Jetson guide recommends Orin NX 16GB and the reComputer J4012 flashing path.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-06"
          ],
          "identityBoundary": "Recommendation and flashing path do not bind one J4012 SKU, carrier revision, module serial, storage image, JetPack state or physical computer."
        },
        {
          "id": "toddlerbot-2xm-gripper-eight-channel-serial",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "label": "Eight-channel communication-board boundary",
          "nodeKind": "control",
          "configurationBoundary": "Pinned setup installs the WCH CH9344 serial driver for the eight-channel board used to access Dynamixel motors.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-07"
          ],
          "identityBoundary": "PCB revision, population, CH9344 variant, USB descriptor, channel allocation, latency setting, cabling and physical board are not frozen."
        },
        {
          "id": "toddlerbot-2xm-gripper-actuator-bank",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "label": "ToddlerBot 2×M gripper active Dynamixel configuration",
          "nodeKind": "actuation",
          "configurationBoundary": "32 active positions: the 2×M bank plus two XC330 bilateral gripper-rack positions.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-01",
            "toddlerbot-2xm-gripper-item-02",
            "toddlerbot-2xm-gripper-item-03",
            "toddlerbot-2xm-gripper-item-04",
            "toddlerbot-2xm-gripper-item-05"
          ],
          "identityBoundary": "Counts are configuration assignments after deep-merging default.yml and robot.yml and filtering against fixed XML; family names do not prove complete order codes, serials, IDs, firmware or installed units."
        },
        {
          "id": "toddlerbot-2xm-gripper-dual-bno08x",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "label": "Dual BNO08X I²C sensing boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned sensing code initializes top and bottom BNO08X-family devices at I²C addresses 0x4A and 0x4B.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-08"
          ],
          "identityBoundary": "Exact BNO080/BNO085 identity, breakout revision, bus wiring, calibration, coordinate frame, timestamps and physical population are not frozen or observed."
        },
        {
          "id": "toddlerbot-2xm-gripper-stereo-fisheye",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "label": "Left/right fisheye camera boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned camera and Jetson setup implement left/right V4L2 paths and install software required for fisheye cameras and stereo depth.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-09"
          ],
          "identityBoundary": "Camera model, sensor, lens, USB topology, device numbering stability, calibration, synchronization and measured image/depth performance are not frozen."
        },
        {
          "id": "toddlerbot-2xm-gripper-battery-distro-power",
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "label": "Battery and Distro Board v8 power boundary",
          "nodeKind": "power",
          "configurationBoundary": "Pinned build flow installs the battery and assembled PCB in the torso before the standing test.",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-10"
          ],
          "identityBoundary": "The mutable procurement sheet is not commit-frozen; pack identity, cells, capacity, protection, Distro Board unit, connectors, rail allocation, current budget and physical harness are unresolved."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-gripper-j4012-eight-channel-serial",
          "fromNodeId": "toddlerbot-2xm-gripper-j4012-orin-nx",
          "toNodeId": "toddlerbot-2xm-gripper-eight-channel-serial",
          "relationType": "data-control",
          "interfaceLabel": "USB serial fan-out through CH9344 driver boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-06",
            "toddlerbot-2xm-gripper-item-07"
          ],
          "evidenceText": "The pinned Jetson guide identifies the J4012/Orin NX path and installs ch9344ser specifically for the eight-channel communication board.",
          "unresolved": [
            "USB connector, hub topology, board revision, descriptor, channel enumeration, latency state and captured serial traffic are not frozen.",
            "RCI has not connected or enumerated this path."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-gripper-serial-dynamixel-bank",
          "fromNodeId": "toddlerbot-2xm-gripper-eight-channel-serial",
          "toNodeId": "toddlerbot-2xm-gripper-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "Dynamixel Protocol 2.0 serial control/feedback boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-01",
            "toddlerbot-2xm-gripper-item-02",
            "toddlerbot-2xm-gripper-item-03",
            "toddlerbot-2xm-gripper-item-04",
            "toddlerbot-2xm-gripper-item-05",
            "toddlerbot-2xm-gripper-item-07"
          ],
          "evidenceText": "Pinned code uses the Dynamixel SDK Protocol 2.0 path, while the merged configuration and fixed XML establish the active family-level actuator positions for this exact named variant.",
          "unresolved": [
            "Port-to-body-group allocation, baud rate for the assembled robot, motor order, IDs, EEPROM, firmware, termination, cable topology and successful bulk read/write are not frozen.",
            "Family labels are not complete orderable suffixes or physical inventory."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-gripper-dual-imu-i2c",
          "fromNodeId": "toddlerbot-2xm-gripper-dual-bno08x",
          "toNodeId": "toddlerbot-2xm-gripper-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "I²C BNO08X data at addresses 0x4A and 0x4B",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-06",
            "toddlerbot-2xm-gripper-item-08"
          ],
          "evidenceText": "Pinned sensing code opens two BNO08X-family devices over I²C and the Jetson setup adds the operating user to the i2c group.",
          "unresolved": [
            "I²C bus number, pins, cable, pull-ups, exact device identity, report configuration, calibration, time base and physical readback are not frozen.",
            "RCI has not captured either IMU stream."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-gripper-stereo-camera-v4l2",
          "fromNodeId": "toddlerbot-2xm-gripper-stereo-fisheye",
          "toNodeId": "toddlerbot-2xm-gripper-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "Two V4L2 camera paths into on-board compute",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-06",
            "toddlerbot-2xm-gripper-item-09"
          ],
          "evidenceText": "Pinned setup installs v4l-utils/ffmpeg for fisheye cameras and pinned code opens left and right V4L2 paths for stereo processing.",
          "unresolved": [
            "Camera SKUs, USB branch, stable device mapping, format, resolution, frame rate, synchronization, intrinsics/extrinsics and measured depth quality are not frozen.",
            "RCI has not opened either camera."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-gripper-power-j4012",
          "fromNodeId": "toddlerbot-2xm-gripper-battery-distro-power",
          "toNodeId": "toddlerbot-2xm-gripper-j4012-orin-nx",
          "relationType": "power",
          "interfaceLabel": "Distro/Jetson compute-power branch",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-06",
            "toddlerbot-2xm-gripper-item-10"
          ],
          "evidenceText": "The fixed Distro BOM labels a power output for Jetson and the pinned build flow installs the battery, PCB and prepared Jetson in the torso.",
          "unresolved": [
            "Battery SKU, input voltage under load, connector/pinout, branch protection, J4012 input setting, current margin, startup behavior and measured rail are not frozen.",
            "RCI has not applied power."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xm-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xm-gripper-power-actuator-bank",
          "fromNodeId": "toddlerbot-2xm-gripper-battery-distro-power",
          "toNodeId": "toddlerbot-2xm-gripper-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "Distro Board v8 actuator-power distribution boundary",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xm-gripper-item-01",
            "toddlerbot-2xm-gripper-item-02",
            "toddlerbot-2xm-gripper-item-03",
            "toddlerbot-2xm-gripper-item-04",
            "toddlerbot-2xm-gripper-item-05",
            "toddlerbot-2xm-gripper-item-10"
          ],
          "evidenceText": "The responsibility-party build places battery and assembled PCB into the torso before standing operation, and the Distro fabrication surface exposes the robot power-distribution role.",
          "unresolved": [
            "Exact rail voltage, channel allocation, connector pinout, current budget, fuse/protection, ground return, voltage drop, thermal margin and simultaneous actuator load are not frozen.",
            "RCI has not energized any actuator branch."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-toddlerbot-2xc-gripper",
      "platform": "ToddlerBot 2×C gripper configuration files",
      "responsibilityParty": "ToddlerBot project / Carnegie Mellon University",
      "morphology": "humanoid",
      "platformRevisionBoundary": "toddlerbot_2xc_gripper configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e.",
      "selectedBomSurface": "toddlerbot/descriptions/toddlerbot_2xc_gripper configuration-specific engineering files plus selected pinned system and actuator-composition rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 63,
      "entryCountBoundary": "63 selected responsibility-party records combine immutable configuration paths with bounded system rows. File paths are not installed quantities; actuator counts are active configuration assignments after default/config deep merge and fixed-XML filtering, not serialised as-built evidence.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Configuration-specific folders are kept separate. RCI does not merge actuator, gripper or leader variants into one fictional build.",
      "strongestPublishedEvidence": "Immutable configuration geometry plus active fixed-XML-filtered actuator composition; full-body variants also expose the pinned J4012/Orin NX, serial fan-out, IMU, stereo-camera and bounded power architecture.",
      "largestRebuildGap": "No cryptographically frozen full procurement sheet, exact motor suffix set, communication-board revision, as-built serial evidence, powered acceptance record or independent rebuild closes the configuration.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "title": "ToddlerBot toddlerbot_2xc_gripper configuration tree",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "location": "53 configuration-specific files plus selected rows derived from default.yml, configuration robot.yml, fixed XML and pinned hardware/software documentation; shared geometry remains separate",
          "revision": "toddlerbot_2xc_gripper configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-2xc-gripper",
      "href": "/robots/toddlerbot-2xc-gripper/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-2xc-gripper-file-001",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "head_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/head_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-002",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-003",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-004",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-005",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-006",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-007",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-008",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_gripper_finger_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_gripper_finger_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-009",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_gripper_finger_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_gripper_finger_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-010",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_gripper_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_gripper_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-011",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_gripper_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_gripper_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-012",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-013",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-014",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-015",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-016",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-017",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-018",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-019",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-020",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-021",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-022",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "left_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/left_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-023",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "neck_pitch_plate_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/neck_pitch_plate_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-024",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "neck_rod_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/neck_rod_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-025",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "neck_rod_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/neck_rod_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-026",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "neck_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/neck_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-027",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "neck_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/neck_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-028",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "pelvis_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/pelvis_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-029",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_ankle_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_ankle_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-030",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_ankle_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_ankle_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-031",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_ankle_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_ankle_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-032",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-033",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-034",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-035",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_gripper_finger_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_gripper_finger_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-036",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_gripper_finger_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_gripper_finger_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-037",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_gripper_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_gripper_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-038",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_gripper_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_gripper_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-039",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_hip_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_hip_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-040",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_hip_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_hip_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-041",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_hip_yaw_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_hip_yaw_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-042",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_hip_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_hip_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-043",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_knee_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_knee_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-044",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-045",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-046",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-047",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-048",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-049",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "right_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/right_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-050",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-051",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "waist_gear_drive_2_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/waist_gear_drive_2_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-052",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "waist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/waist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-file-053",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets",
          "name": "waist_gears_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/toddlerbot_2xc_gripper/assets/waist_gears_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-01",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC330 actuator positions including two grippers",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC330 family",
          "variant": null,
          "quantity": 8,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Eight active XC330 family assignments include two gripper-rack positions in the gripper fixed XML.",
          "role": "Neck, waist, hip-yaw and bilateral gripper-rack actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-02",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "2XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XC430 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active 2XC430 family assignments survive fixed-XML filtering.",
          "role": "2×C hip pitch/roll actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-03",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XM430-W210 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XM430-W210 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XM430-W210 family assignments survive fixed-XML filtering.",
          "role": "Knee and ankle-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-04",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "XC430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC430 family",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four active XC430 family assignments survive fixed-XML filtering.",
          "role": "Ankle-roll and shoulder-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-05",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "2XL430 actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XL430 family",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve active 2XL430 family assignments survive fixed-XML filtering.",
          "role": "2×C arm actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-06",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "reComputer J4012 / Jetson Orin NX 16GB",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "reComputer Industrial J4012 / Jetson Orin NX 16GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned ToddlerBot Jetson guide recommends Jetson Orin NX 16GB and links the J4012 flashing path; this does not establish one purchased SKU, module serial or carrier-board revision.",
          "role": "On-board compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-07",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Eight-channel communication board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The pinned setup installs the CH9344 serial driver for the eight-channel communication board; exact assembled PCB identity, USB topology and port-to-motor-group mapping are not frozen.",
          "role": "Jetson-to-Dynamixel serial fan-out",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-08",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "BNO08X I²C IMU pair",
          "itemClass": "sensor",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "BNO08X family",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned code initializes addresses 0x4A and 0x4B; exact BNO080/BNO085 orderable identity, breakout revisions and physical population are not established.",
          "role": "Top and bottom inertial sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-09",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Stereo fisheye camera pair",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Pinned software implements left and right V4L2 camera paths, but camera manufacturer, sensor, USB descriptors, calibration and installed units are not frozen.",
          "role": "Left/right visual sensing and stereo-depth input",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-2xc-gripper-item-10",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "sourceId": "toddlerbot-toddlerbot_2xc_gripper-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml plus configuration robot.yml, generated fixed XML and responsibility-party hardware/software documentation",
          "name": "Battery and Distro Board v8 power boundary",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The pinned build flow requires the battery and assembled PCB, but does not cryptographically bind the mutable procurement sheet, pack identity, branch ratings or one as-built harness to this commit.",
          "role": "Compute, sensing and actuator energy distribution",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 63,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "toddlerbot-2xc-gripper-j4012-orin-nx",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "label": "Recommended J4012 / Jetson Orin NX 16GB on-board compute",
          "nodeKind": "compute",
          "configurationBoundary": "ToddlerBot 2×C gripper at the pinned commit; the responsibility-party Jetson guide recommends Orin NX 16GB and the reComputer J4012 flashing path.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-06"
          ],
          "identityBoundary": "Recommendation and flashing path do not bind one J4012 SKU, carrier revision, module serial, storage image, JetPack state or physical computer."
        },
        {
          "id": "toddlerbot-2xc-gripper-eight-channel-serial",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "label": "Eight-channel communication-board boundary",
          "nodeKind": "control",
          "configurationBoundary": "Pinned setup installs the WCH CH9344 serial driver for the eight-channel board used to access Dynamixel motors.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-07"
          ],
          "identityBoundary": "PCB revision, population, CH9344 variant, USB descriptor, channel allocation, latency setting, cabling and physical board are not frozen."
        },
        {
          "id": "toddlerbot-2xc-gripper-actuator-bank",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "label": "ToddlerBot 2×C gripper active Dynamixel configuration",
          "nodeKind": "actuation",
          "configurationBoundary": "32 active positions: the 2×C bank plus two XC330 bilateral gripper-rack positions.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-01",
            "toddlerbot-2xc-gripper-item-02",
            "toddlerbot-2xc-gripper-item-03",
            "toddlerbot-2xc-gripper-item-04",
            "toddlerbot-2xc-gripper-item-05"
          ],
          "identityBoundary": "Counts are configuration assignments after deep-merging default.yml and robot.yml and filtering against fixed XML; family names do not prove complete order codes, serials, IDs, firmware or installed units."
        },
        {
          "id": "toddlerbot-2xc-gripper-dual-bno08x",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "label": "Dual BNO08X I²C sensing boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned sensing code initializes top and bottom BNO08X-family devices at I²C addresses 0x4A and 0x4B.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-08"
          ],
          "identityBoundary": "Exact BNO080/BNO085 identity, breakout revision, bus wiring, calibration, coordinate frame, timestamps and physical population are not frozen or observed."
        },
        {
          "id": "toddlerbot-2xc-gripper-stereo-fisheye",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "label": "Left/right fisheye camera boundary",
          "nodeKind": "perception",
          "configurationBoundary": "Pinned camera and Jetson setup implement left/right V4L2 paths and install software required for fisheye cameras and stereo depth.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-09"
          ],
          "identityBoundary": "Camera model, sensor, lens, USB topology, device numbering stability, calibration, synchronization and measured image/depth performance are not frozen."
        },
        {
          "id": "toddlerbot-2xc-gripper-battery-distro-power",
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "label": "Battery and Distro Board v8 power boundary",
          "nodeKind": "power",
          "configurationBoundary": "Pinned build flow installs the battery and assembled PCB in the torso before the standing test.",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-10"
          ],
          "identityBoundary": "The mutable procurement sheet is not commit-frozen; pack identity, cells, capacity, protection, Distro Board unit, connectors, rail allocation, current budget and physical harness are unresolved."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-gripper-j4012-eight-channel-serial",
          "fromNodeId": "toddlerbot-2xc-gripper-j4012-orin-nx",
          "toNodeId": "toddlerbot-2xc-gripper-eight-channel-serial",
          "relationType": "data-control",
          "interfaceLabel": "USB serial fan-out through CH9344 driver boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-06",
            "toddlerbot-2xc-gripper-item-07"
          ],
          "evidenceText": "The pinned Jetson guide identifies the J4012/Orin NX path and installs ch9344ser specifically for the eight-channel communication board.",
          "unresolved": [
            "USB connector, hub topology, board revision, descriptor, channel enumeration, latency state and captured serial traffic are not frozen.",
            "RCI has not connected or enumerated this path."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-gripper-serial-dynamixel-bank",
          "fromNodeId": "toddlerbot-2xc-gripper-eight-channel-serial",
          "toNodeId": "toddlerbot-2xc-gripper-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "Dynamixel Protocol 2.0 serial control/feedback boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-01",
            "toddlerbot-2xc-gripper-item-02",
            "toddlerbot-2xc-gripper-item-03",
            "toddlerbot-2xc-gripper-item-04",
            "toddlerbot-2xc-gripper-item-05",
            "toddlerbot-2xc-gripper-item-07"
          ],
          "evidenceText": "Pinned code uses the Dynamixel SDK Protocol 2.0 path, while the merged configuration and fixed XML establish the active family-level actuator positions for this exact named variant.",
          "unresolved": [
            "Port-to-body-group allocation, baud rate for the assembled robot, motor order, IDs, EEPROM, firmware, termination, cable topology and successful bulk read/write are not frozen.",
            "Family labels are not complete orderable suffixes or physical inventory."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-gripper-dual-imu-i2c",
          "fromNodeId": "toddlerbot-2xc-gripper-dual-bno08x",
          "toNodeId": "toddlerbot-2xc-gripper-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "I²C BNO08X data at addresses 0x4A and 0x4B",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-06",
            "toddlerbot-2xc-gripper-item-08"
          ],
          "evidenceText": "Pinned sensing code opens two BNO08X-family devices over I²C and the Jetson setup adds the operating user to the i2c group.",
          "unresolved": [
            "I²C bus number, pins, cable, pull-ups, exact device identity, report configuration, calibration, time base and physical readback are not frozen.",
            "RCI has not captured either IMU stream."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-gripper-stereo-camera-v4l2",
          "fromNodeId": "toddlerbot-2xc-gripper-stereo-fisheye",
          "toNodeId": "toddlerbot-2xc-gripper-j4012-orin-nx",
          "relationType": "data-control",
          "interfaceLabel": "Two V4L2 camera paths into on-board compute",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-06",
            "toddlerbot-2xc-gripper-item-09"
          ],
          "evidenceText": "Pinned setup installs v4l-utils/ffmpeg for fisheye cameras and pinned code opens left and right V4L2 paths for stereo processing.",
          "unresolved": [
            "Camera SKUs, USB branch, stable device mapping, format, resolution, frame rate, synchronization, intrinsics/extrinsics and measured depth quality are not frozen.",
            "RCI has not opened either camera."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-gripper-power-j4012",
          "fromNodeId": "toddlerbot-2xc-gripper-battery-distro-power",
          "toNodeId": "toddlerbot-2xc-gripper-j4012-orin-nx",
          "relationType": "power",
          "interfaceLabel": "Distro/Jetson compute-power branch",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-06",
            "toddlerbot-2xc-gripper-item-10"
          ],
          "evidenceText": "The fixed Distro BOM labels a power output for Jetson and the pinned build flow installs the battery, PCB and prepared Jetson in the torso.",
          "unresolved": [
            "Battery SKU, input voltage under load, connector/pinout, branch protection, J4012 input setting, current margin, startup behavior and measured rail are not frozen.",
            "RCI has not applied power."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-2xc-gripper",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-2xc-gripper-power-actuator-bank",
          "fromNodeId": "toddlerbot-2xc-gripper-battery-distro-power",
          "toNodeId": "toddlerbot-2xc-gripper-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "Distro Board v8 actuator-power distribution boundary",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-2xc-gripper-item-01",
            "toddlerbot-2xc-gripper-item-02",
            "toddlerbot-2xc-gripper-item-03",
            "toddlerbot-2xc-gripper-item-04",
            "toddlerbot-2xc-gripper-item-05",
            "toddlerbot-2xc-gripper-item-10"
          ],
          "evidenceText": "The responsibility-party build places battery and assembled PCB into the torso before standing operation, and the Distro fabrication surface exposes the robot power-distribution role.",
          "unresolved": [
            "Exact rail voltage, channel allocation, connector pinout, current budget, fuse/protection, ground return, voltage drop, thermal margin and simultaneous actuator load are not frozen.",
            "RCI has not energized any actuator branch."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-toddlerbot-teleop-leader",
      "platform": "ToddlerBot teleoperation leader files",
      "responsibilityParty": "ToddlerBot project / Carnegie Mellon University",
      "morphology": "humanoid",
      "platformRevisionBoundary": "teleop_leader configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e.",
      "selectedBomSurface": "toddlerbot/descriptions/teleop_leader configuration-specific engineering files plus selected pinned system and actuator-composition rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 51,
      "entryCountBoundary": "51 selected responsibility-party records combine immutable configuration paths with bounded system rows. File paths are not installed quantities; actuator counts are active configuration assignments after default/config deep merge and fixed-XML filtering, not serialised as-built evidence.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Configuration-specific folders are kept separate. RCI does not merge actuator, gripper or leader variants into one fictional build.",
      "strongestPublishedEvidence": "Immutable configuration geometry plus active fixed-XML-filtered actuator composition; full-body variants also expose the pinned J4012/Orin NX, serial fan-out, IMU, stereo-camera and bounded power architecture.",
      "largestRebuildGap": "No cryptographically frozen full procurement sheet, exact motor suffix set, communication-board revision, as-built serial evidence, powered acceptance record or independent rebuild closes the configuration.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "toddlerbot-teleop_leader-tree",
          "title": "ToddlerBot teleop_leader configuration tree",
          "url": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "location": "46 configuration-specific files plus selected rows derived from default.yml, configuration robot.yml, fixed XML and pinned hardware/software documentation; shared geometry remains separate",
          "revision": "teleop_leader configuration tree at ToddlerBot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "toddlerbot-teleop-leader",
      "href": "/robots/toddlerbot-teleop-leader/",
      "morphologyLabel": "Humanoid",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "toddlerbot-teleop-leader-file-001",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-002",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-003",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-004",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-005",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-006",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-007",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-008",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-009",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_leader_hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_leader_hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-010",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_leader_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_leader_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-011",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-012",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-013",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-014",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-015",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-016",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-017",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-018",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-019",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-020",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-021",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-022",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "left_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/left_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-023",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_elbow_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_elbow_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-024",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_elbow_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_elbow_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-025",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_elbow_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_elbow_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-026",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_elbow_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_elbow_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-027",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_elbow_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_elbow_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-028",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_elbow_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_elbow_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-029",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-030",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-031",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_leader_hand_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_leader_hand_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-032",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_leader_hand_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_leader_hand_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-033",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-034",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-035",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-036",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-037",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_roll_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_roll_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-038",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_roll_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_roll_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-039",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_yaw_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_yaw_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-040",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_shoulder_yaw_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_shoulder_yaw_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-041",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_wrist_gear_drive_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_wrist_gear_drive_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-042",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_wrist_gear_drive_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_wrist_gear_drive_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-043",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_wrist_pitch_link_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_wrist_pitch_link_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-044",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "right_wrist_pitch_link_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/right_wrist_pitch_link_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-045",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "torso_collision.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/torso_collision.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-file-046",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "toddlerbot/descriptions/teleop_leader/assets",
          "name": "torso_visual.stl",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "toddlerbot/descriptions/teleop_leader/assets/torso_visual.stl",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-item-01",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml, teleop_leader fixed XML and responsibility-party teleoperation architecture",
          "name": "XC430 leader-arm actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XC430 family",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Two active XC430 family assignments survive the teleop-leader fixed-XML filter.",
          "role": "Bilateral leader shoulder-pitch actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-item-02",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml, teleop_leader fixed XML and responsibility-party teleoperation architecture",
          "name": "2XL430 leader-arm actuator positions",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "2XL430 family",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve active 2XL430 family assignments survive the teleop-leader fixed-XML filter.",
          "role": "Remaining bilateral leader-arm actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-item-03",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml, teleop_leader fixed XML and responsibility-party teleoperation architecture",
          "name": "External teleoperation host",
          "itemClass": "compute",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The architecture supports an external development/teleoperation computer, but no exact host SKU, OS image or physical unit is fixed.",
          "role": "Leader-side teleoperation compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-item-04",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml, teleop_leader fixed XML and responsibility-party teleoperation architecture",
          "name": "Eight-channel communication board boundary",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "A serial communication boundary is required; board revision, selected channels, USB identity and port mapping are not frozen for the leader configuration.",
          "role": "Host-to-leader Dynamixel serial interface",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "toddlerbot-teleop-leader-item-05",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "sourceId": "toddlerbot-teleop_leader-tree",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceSection": "Pinned default.yml, teleop_leader fixed XML and responsibility-party teleoperation architecture",
          "name": "External leader-arm power boundary",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The configuration requires actuator power, but exact supply, voltage branch, protection, connector and as-built wiring are not fixed in this selected surface.",
          "role": "Leader actuator energy source",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 51,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "toddlerbot-teleop-leader-external-host",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "label": "External leader-side teleoperation host",
          "nodeKind": "external-host",
          "configurationBoundary": "Pinned teleoperation leader configuration operated from an external development/teleoperation host.",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-03"
          ],
          "identityBoundary": "Host model, operating system, software environment, USB controller and physical machine are not frozen."
        },
        {
          "id": "toddlerbot-teleop-leader-serial-interface",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "label": "Leader serial-interface boundary",
          "nodeKind": "control",
          "configurationBoundary": "Serial interface between external host and leader-arm Dynamixel bank.",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-04"
          ],
          "identityBoundary": "Board revision, selected channels, USB descriptor, driver/latency state, port mapping and physical controller are not frozen."
        },
        {
          "id": "toddlerbot-teleop-leader-actuator-bank",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "label": "Fourteen-position bilateral leader actuator bank",
          "nodeKind": "actuation",
          "configurationBoundary": "Fixed XML retains 2 XC430 and 12 2XL430 family assignments; software assigns teleop-leader motor IDs from 16 upward.",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-01",
            "toddlerbot-teleop-leader-item-02"
          ],
          "identityBoundary": "Family assignments and software IDs do not prove complete order codes, EEPROM state, serials, calibration, follower pairing or physical installation."
        },
        {
          "id": "toddlerbot-teleop-leader-power",
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "label": "External leader actuator-power boundary",
          "nodeKind": "power",
          "configurationBoundary": "An external source must power the fourteen leader actuator positions.",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-05"
          ],
          "identityBoundary": "Supply voltage/current, connector, polarity, protection, distribution, grounding and powered acceptance are not frozen."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-teleop-leader-host-serial",
          "fromNodeId": "toddlerbot-teleop-leader-external-host",
          "toNodeId": "toddlerbot-teleop-leader-serial-interface",
          "relationType": "data-control",
          "interfaceLabel": "External-host USB serial boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-03",
            "toddlerbot-teleop-leader-item-04"
          ],
          "evidenceText": "The teleoperation leader is operated from an external host through the project Dynamixel serial-control stack.",
          "unresolved": [
            "Host, controller board, USB descriptor, driver, port and observed enumeration are not frozen.",
            "RCI has not connected the leader interface."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-teleop-leader-serial-actuators",
          "fromNodeId": "toddlerbot-teleop-leader-serial-interface",
          "toNodeId": "toddlerbot-teleop-leader-actuator-bank",
          "relationType": "data-control",
          "interfaceLabel": "Dynamixel Protocol 2.0 leader control/feedback boundary",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-01",
            "toddlerbot-teleop-leader-item-02",
            "toddlerbot-teleop-leader-item-04"
          ],
          "evidenceText": "Pinned fixed XML retains fourteen active leader positions and pinned code offsets their IDs from 16 while using the Dynamixel SDK path.",
          "unresolved": [
            "Complete suffixes, port, baud, EEPROM, firmware, physical IDs, calibration and follower mapping are not frozen.",
            "RCI has not read or commanded the leader bank."
          ]
        },
        {
          "robotRecordId": "bom-audit-toddlerbot-teleop-leader",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "hshi74/toddlerbot commit e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "sourceUrl": "https://github.com/hshi74/toddlerbot/tree/e337f3b177b4b53abff70b31d1695a7b66cc6d2e",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "toddlerbot-teleop-leader-power-actuators",
          "fromNodeId": "toddlerbot-teleop-leader-power",
          "toNodeId": "toddlerbot-teleop-leader-actuator-bank",
          "relationType": "power",
          "interfaceLabel": "External leader actuator-power boundary",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "toddlerbot-teleop-leader-item-01",
            "toddlerbot-teleop-leader-item-02",
            "toddlerbot-teleop-leader-item-05"
          ],
          "evidenceText": "The fourteen active leader actuator positions require a separate powered hardware path; RCI models it without inventing an orderable supply.",
          "unresolved": [
            "Voltage, current, connector, polarity, distribution, protection, ground, load margin and powered behavior are not published in the selected configuration surface.",
            "RCI has not applied power."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-rebot-b601-dm-v11",
      "platform": "reBot B601 DM v1.1 production files",
      "responsibilityParty": "Seeed Studio reBot project",
      "morphology": "desktop-arm",
      "platformRevisionBoundary": "reBot_B601_DM directory at reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56; selected file tree includes the v1.1 assemblies present at that commit.",
      "selectedBomSurface": "B601 DM production files plus selected motor, CAN-interface and XT30 2+2 harness rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 65,
      "entryCountBoundary": "Sixty-five responsibility-party records: 58 immutable production-file paths and seven selected purchased motor, controller and harness rows. File presence is not an installed quantity; table quantities remain responsibility-party claims rather than an as-built manifest.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "The responsibility-party changelog distinguishes v1.0 and v1.1. The profile does not treat the commercial shipping version as identical to this open-source developer boundary.",
      "strongestPublishedEvidence": "Versioned DM geometry plus four DM4310(V4), three DM4340P(V4), one generic CAN-to-USB board and four quantity-bounded XT30 2+2 harness variants, separated from the RobStride branch.",
      "largestRebuildGap": "The source does not bind motors to joint numbers, publish the CAN board identity, freeze connector pinout/termination/IDs or provide wiring acceptance data, as-built serials or an RCI rebuild.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "rebot-b601-dm-production-tree",
          "title": "reBot B601 DM production-file tree",
          "url": "https://github.com/Seeed-Projects/reBot-DevArm/tree/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM",
          "location": "58 STEP/STL production files plus seven selected purchased-interface and harness rows from the fixed DM README",
          "revision": "reBot_B601_DM directory at reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56; selected file tree includes the v1.1 assemblies present at that commit."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "rebot-b601-dm-v1-1",
      "href": "/robots/rebot-b601-dm-v1-1/",
      "morphologyLabel": "Desktop arm",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "rebot-b601-dm-v11-file-001",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Arm_Handle.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Arm_Handle.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-002",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_BASE_Link.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_BASE_Link.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-003",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_BASE_Plate.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_BASE_Plate.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-004",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Finger.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Finger.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-005",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Joint5_Cable Restraint_A.step",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Joint5_Cable Restraint_A.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-006",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Joint6_7_Cable Restraint_A.step",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Joint6_7_Cable Restraint_A.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-007",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Joint6_7_Cable Restraint_B.step",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Joint6_7_Cable Restraint_B.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-008",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Lower_Arm_Cover.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Lower_Arm_Cover.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-009",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Lower_Arm_Filler_L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Lower_Arm_Filler_L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-010",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Lower_Arm_Filler_M.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Lower_Arm_Filler_M.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-011",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Lower_Arm_Filler_R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Lower_Arm_Filler_R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-012",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Lower_Arm_Limit.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Lower_Arm_Limit.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-013",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Motor_Cover.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Motor_Cover.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-014",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Rail_Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Rail_Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-015",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Upper_Arm_Cover.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Upper_Arm_Cover.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-016",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Upper_Arm_Fuller_L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Upper_Arm_Fuller_L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-017",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Upper_Arm_Fuller_M.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Upper_Arm_Fuller_M.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-018",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Upper_Arm_Fuller_R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Upper_Arm_Fuller_R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-019",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "01_Upper_Arm_Limit.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/01_Upper_Arm_Limit.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-020",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "D405_305_Mount.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/D405_305_Mount.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-021",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "D435_Gemini2_Mount.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/D435_Gemini2_Mount.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-022",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "DM-power-Bottom Cover.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/DM-power-Bottom Cover.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-023",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "DM-power-Top Cover-Sliding Cover.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/DM-power-Top Cover-Sliding Cover.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-024",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "DM-power-Top Cover.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/DM-power-Top Cover.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-025",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "DM_Motor1_wiring_harness_clip.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/DM_Motor1_wiring_harness_clip.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-026",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "Soft_Gripper_Finger.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/Soft_Gripper_Finger.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-027",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "Soft_Gripper_Mount.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/Soft_Gripper_Mount.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-028",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/3D_Printed_Parts",
          "name": "UVC32_mount.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/3D_Printed_Parts/UVC32_mount.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-029",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02-RACK.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02-RACK.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-030",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Arm_Yaw_Limit.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Arm_Yaw_Limit.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-031",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Base_Motor_Shim.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Base_Motor_Shim.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-032",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Base_Reinforcement_Part.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Base_Reinforcement_Part.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-033",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_FLANGE.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_FLANGE.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-034",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Gear_Connector.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Gear_Connector.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-035",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Gripper_Connector_A.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Gripper_Connector_A.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-036",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Gripper_Connector_B.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Gripper_Connector_B.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-037",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Lower_Upper_Link_L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Lower_Upper_Link_L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-038",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Lower_Upper_Link_R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Lower_Upper_Link_R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-039",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Lower_Wrist_Link_L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Lower_Wrist_Link_L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-040",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Lower_Wrist_Link_R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Lower_Wrist_Link_R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-041",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Motor_Back_Spacer.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Motor_Back_Spacer.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-042",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Motor_Front_Spacer.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Motor_Front_Spacer.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-043",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Rack.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Rack.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-044",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Slider_Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Slider_Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-045",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Slider_Extension.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Slider_Extension.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-046",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "02_Wrist_Bracket.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/02_Wrist_Bracket.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-047",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03-Link1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03-Link1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-048",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03-Link2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03-Link2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-049",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03-Link3_L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03-Link3_L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-050",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03-Link3_R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03-Link3_R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-051",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03-Link5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03-Link5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-052",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03_Link1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03_Link1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-053",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03_Link2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03_Link2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-054",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03_Link3_L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03_Link3_L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-055",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03_Link3_R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03_Link3_R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-056",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM/Metal_Parts",
          "name": "03_Link5.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/Metal_Parts/03_Link5.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-057",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM",
          "name": "reBot_B601_DM_v1.1_20260425.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/reBot_B601_DM_v1.1_20260425.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-file-058",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_DM",
          "name": "reBot_B601_DM_v1.1_20260625.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_DM/reBot_B601_DM_v1.1_20260625.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-01",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "Damiao DM4310(V4) brushless motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DM4310(V4)",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four DM4310(V4) motors are published in the responsibility-party DM table.",
          "role": "DM-branch joint actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-02",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "Damiao DM4340P(V4) brushless motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DM4340P(V4)",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three DM4340P(V4) motors are published; the selected table does not bind each motor model to a numbered joint.",
          "role": "DM-branch joint and gripper actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-03",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "DM CAN-to-USB driver board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One CAN-to-USB driver board is published without an exact board model or revision in the table.",
          "role": "External-host to DM motor-bus interface",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-04",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 350 mm, both ends angled",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 350 mm / two angled ends",
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Two cables are published for this exact length and end-orientation row.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-05",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 350 mm, one angled and one straight end",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 350 mm / mixed ends",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One cable is published for this exact length and end-orientation row.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-06",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 200 mm, both ends angled",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 200 mm / two angled ends",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three cables are published for this exact length and end-orientation row.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-dm-v11-item-07",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 DM purchased parts and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 200 mm, both ends straight",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 200 mm / two straight ends",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One cable is published for this exact length and end-orientation row.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 65,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "rebot-dm-vs-rs",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "relationType": "revision-separation",
          "from": "reBot B601 DM / Damiao motor boundary",
          "to": "reBot B601 RS / RobStride motor boundary",
          "effectiveBoundary": "The responsibility-party repository publishes separate DM and RS hardware directories and BOM links.",
          "systemImpact": "Motor, joint-interface, purchased-part and geometry identities cannot be assumed interchangeable across the two branches.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "unresolved": "RCI has not compared all same-named geometry files or performed a motor-branch conversion."
        },
        {
          "id": "rebot-dm-v10-to-v11",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "relationType": "version-upgrade",
          "from": "reBot B601 DM v1.0",
          "to": "reBot B601 DM v1.1",
          "effectiveBoundary": "The responsibility-party changelog states v1.1 adds cable restraints, corrects Joint 1 model identity and adds a base reinforcement part.",
          "systemImpact": "Cable retention, base rigidity and exact joint-motor identity change within the DM branch.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "rebot-b601-dm-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "unresolved": "The file tree also contains two v1.1 assembly-date filenames; RCI has not measured their geometric delta."
        }
      ],
      "topologyNodes": [
        {
          "id": "rebot-b601-dm-external-host",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "label": "External host for the DM CAN-to-USB path",
          "nodeKind": "external-host",
          "configurationBoundary": "The DM branch publishes a CAN-to-USB driver board, which establishes an external USB-host boundary without identifying one computer.",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-03"
          ],
          "identityBoundary": "Computer model, operating system, USB controller, SDK/ROS/LeRobot version, CAN software stack and physical host are not frozen."
        },
        {
          "id": "rebot-b601-dm-can-usb-board",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "label": "One generic DM CAN-to-USB driver board",
          "nodeKind": "control",
          "configurationBoundary": "One CAN-to-USB driver board in the fixed DM purchased-parts table.",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-03"
          ],
          "identityBoundary": "The table leaves the model blank; PCB revision, transceiver, firmware, USB identity, CAN bitrate, termination and connector pinout are not published."
        },
        {
          "id": "rebot-b601-dm4310-v4-bank",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "label": "Four Damiao DM4310(V4) actuator positions",
          "nodeKind": "actuation",
          "configurationBoundary": "Four exact DM4310(V4) rows in the B601 DM purchased-parts table.",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-01"
          ],
          "identityBoundary": "Joint assignment, serials, firmware, CAN IDs, calibration, thermal state and physical installation are not published."
        },
        {
          "id": "rebot-b601-dm4340p-v4-bank",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "label": "Three Damiao DM4340P(V4) actuator positions",
          "nodeKind": "actuation",
          "configurationBoundary": "Three exact DM4340P(V4) rows in the B601 DM purchased-parts table.",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-02"
          ],
          "identityBoundary": "The source does not bind these positions to joint numbers or isolate the gripper motor; serials, firmware, CAN IDs, calibration and installed state are unknown."
        },
        {
          "id": "rebot-b601-dm-24v-xt30-harness",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "label": "24 V DM input and seven XT30 2+2 harness boundary",
          "nodeKind": "power",
          "configurationBoundary": "The DM specification names 24 V supply and publishes seven XT30 2+2 cables across four length/end-orientation rows.",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-04",
            "rebot-b601-dm-v11-item-05",
            "rebot-b601-dm-v11-item-06",
            "rebot-b601-dm-v11-item-07"
          ],
          "identityBoundary": "Pinout, conductor gauge, polarity, connector ratings, branch-to-joint mapping, fuse/protection, termination and one installed cable set are not frozen; the separate supply subsystem remains a different RCI record."
        },
        {
          "id": "rebot-b601-dm-optional-wrist-camera-mounts",
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "label": "Optional wrist-camera mounting surfaces",
          "nodeKind": "assembly",
          "configurationBoundary": "The root README presents UVC32, D435i, D405/Gemini 305 and Gemini 2 as optional camera-mount choices, with three selected DM STEP identities covering those mount surfaces.",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-file-020",
            "rebot-b601-dm-v11-file-021",
            "rebot-b601-dm-v11-file-028"
          ],
          "identityBoundary": "A mount filename is not an installed sensor record. In particular, D435_Gemini2_Mount.step supports two named options and does not prove that either a D435i or Gemini 2 was purchased, fitted, connected, calibrated or tested."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-dm-host-can-usb",
          "fromNodeId": "rebot-b601-dm-external-host",
          "toNodeId": "rebot-b601-dm-can-usb-board",
          "relationType": "data-control",
          "interfaceLabel": "USB host to one generic CAN-to-USB driver board",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-03"
          ],
          "evidenceText": "The fixed DM purchased-parts table publishes one CAN-to-USB driver board; its named role supports a host-side USB to motor-side CAN boundary without identifying one board.",
          "unresolved": [
            "Host, USB connector/mode, board SKU/revision, firmware, driver, CAN channel/bitrate, termination and captured traffic are not published.",
            "RCI has not enumerated the board or observed CAN frames."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-dm-can-dm4310",
          "fromNodeId": "rebot-b601-dm-can-usb-board",
          "toNodeId": "rebot-b601-dm4310-v4-bank",
          "relationType": "data-control",
          "interfaceLabel": "DM motor CAN/control path over published XT30 2+2 harnesses",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-01",
            "rebot-b601-dm-v11-item-03",
            "rebot-b601-dm-v11-item-04",
            "rebot-b601-dm-v11-item-05",
            "rebot-b601-dm-v11-item-06",
            "rebot-b601-dm-v11-item-07"
          ],
          "evidenceText": "The responsibility-party DM table jointly publishes the CAN-to-USB board, four DM4310(V4) motors and XT30 2+2 harness rows for the arm branch.",
          "unresolved": [
            "The README does not freeze bus order, node IDs, bitrate, termination, pinout, cable-to-joint assignment, firmware or feedback configuration.",
            "RCI has not commanded or read a DM4310(V4)."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-dm-can-dm4340p",
          "fromNodeId": "rebot-b601-dm-can-usb-board",
          "toNodeId": "rebot-b601-dm4340p-v4-bank",
          "relationType": "data-control",
          "interfaceLabel": "DM motor CAN/control path over published XT30 2+2 harnesses",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-02",
            "rebot-b601-dm-v11-item-03",
            "rebot-b601-dm-v11-item-04",
            "rebot-b601-dm-v11-item-05",
            "rebot-b601-dm-v11-item-06",
            "rebot-b601-dm-v11-item-07"
          ],
          "evidenceText": "The responsibility-party DM table jointly publishes the CAN-to-USB board, three DM4340P(V4) motors and XT30 2+2 harness rows for the arm branch.",
          "unresolved": [
            "Joint/gripper allocation, bus order, node IDs, bitrate, termination, pinout, cable assignment, firmware and feedback configuration are not frozen.",
            "RCI has not commanded or read a DM4340P(V4)."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-dm-24v-dm4310-power",
          "fromNodeId": "rebot-b601-dm-24v-xt30-harness",
          "toNodeId": "rebot-b601-dm4310-v4-bank",
          "relationType": "power",
          "interfaceLabel": "24 V branch through XT30 2+2 arm harnesses",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-01",
            "rebot-b601-dm-v11-item-04",
            "rebot-b601-dm-v11-item-05",
            "rebot-b601-dm-v11-item-06",
            "rebot-b601-dm-v11-item-07"
          ],
          "evidenceText": "The DM specification names a 24 V supply and the purchased table publishes the DM4310(V4) motor bank plus the XT30 2+2 harness set.",
          "unresolved": [
            "No pinout, gauge, fuse, branch map, load budget, voltage-drop, inrush, thermal or fault data is published or measured.",
            "RCI has not applied power."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-dm-v11",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_DM/readme.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-dm-24v-dm4340p-power",
          "fromNodeId": "rebot-b601-dm-24v-xt30-harness",
          "toNodeId": "rebot-b601-dm4340p-v4-bank",
          "relationType": "power",
          "interfaceLabel": "24 V branch through XT30 2+2 arm harnesses",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-dm-v11-item-02",
            "rebot-b601-dm-v11-item-04",
            "rebot-b601-dm-v11-item-05",
            "rebot-b601-dm-v11-item-06",
            "rebot-b601-dm-v11-item-07"
          ],
          "evidenceText": "The DM specification names a 24 V supply and the purchased table publishes the DM4340P(V4) motor bank plus the XT30 2+2 harness set.",
          "unresolved": [
            "No joint/gripper branch allocation, pinout, gauge, fuse, load budget, voltage-drop, inrush, thermal or fault data is published or measured.",
            "RCI has not applied power."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-rebot-b601-rs-v10",
      "platform": "reBot B601 RS v1.0 production files",
      "responsibilityParty": "Seeed Studio reBot project",
      "morphology": "desktop-arm",
      "platformRevisionBoundary": "reBot_B601_RS directory at reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56.",
      "selectedBomSurface": "B601 RS production files plus selected motor, CAN-interface, power-separation, harness and optional-supply rows",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 54,
      "entryCountBoundary": "Fifty-four responsibility-party records: 45 immutable production-file paths and nine selected motor, controller, power-separation, harness and optional-supply rows. Minimum “1+” and “4+” quantities stay minimums, and the supply remains optional rather than installed-by-default.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "The RobStride and Damiao motor versions remain separate platform boundaries; shared-looking part names are not asserted equivalent.",
      "strongestPublishedEvidence": "Commit-addressable RS geometry plus four RS00, three RS06, one generic CAN-to-USB board, one power-separation board, four minimum-quantity harness variants and one explicitly optional LRS-600-48 source.",
      "largestRebuildGap": "The source does not bind motors to joint numbers, identify the CAN board, freeze power-separation circuitry/pinout, resolve every “+” harness quantity or provide supplier lots, an as-built manifest or RCI physical rebuild.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "partial",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "rebot-b601-rs-production-tree",
          "title": "reBot B601 RS production-file tree",
          "url": "https://github.com/Seeed-Projects/reBot-DevArm/tree/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS",
          "location": "45 STEP/STL production files plus nine selected purchased-interface, harness and optional-power rows from the fixed RS README",
          "revision": "reBot_B601_RS directory at reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "rebot-b601-rs-v1-0",
      "href": "/robots/rebot-b601-rs-v1-0/",
      "morphologyLabel": "Desktop arm",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 7,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 54,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "rebot-b601-rs-v10-file-001",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-BASE-PLATE.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-BASE-PLATE.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-002",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-CLIP.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-CLIP.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-003",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-COVER.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-COVER.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-004",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-DOWN-DL.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-DOWN-DL.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-005",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-DOWN-DR.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-DOWN-DR.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-006",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-HANDLE.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-HANDLE.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-007",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-RAIL-BASE-2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-RAIL-BASE-2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-008",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-RSM1-STATOR-1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-RSM1-STATOR-1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-009",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-SPACE-UP.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-SPACE-UP.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-010",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-STOPPER-1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-STOPPER-1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-011",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-UP-DL.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-UP-DL.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-012",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "1-UP-DR.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/1-UP-DR.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-013",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "RS-power-Bottom Cover.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/RS-power-Bottom Cover.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-014",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "RS-power-Top Cover-Sliding Cover.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/RS-power-Top Cover-Sliding Cover.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-015",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "RS-power-Top Cover.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/RS-power-Top Cover.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-016",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/3D_Printed_Parts",
          "name": "RS_Motor1_wiring_harness_clip.stp",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/3D_Printed_Parts/RS_Motor1_wiring_harness_clip.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-017",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "1-O-CLIP.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/1-O-CLIP.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-018",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-CD.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-CD.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-019",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-LINK-2_3.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-LINK-2_3.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-020",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-LINK-3_4-L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-LINK-3_4-L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-021",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-LINK-3_4-R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-LINK-3_4-R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-022",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-LINK-4_5-L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-LINK-4_5-L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-023",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-LINK-4_5-R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-LINK-4_5-R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-024",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-M6-ROTOR.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-M6-ROTOR.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-025",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-M7-ROTOR.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-M7-ROTOR.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-026",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-Motor_Back_Spacer.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-Motor_Back_Spacer.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-027",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RACK-1M.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RACK-1M.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-028",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RAIL-BASE-1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RAIL-BASE-1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-029",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM-ROTOR-L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM-ROTOR-L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-030",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM-ROTOR-R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM-ROTOR-R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-031",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM1-ROTOR-1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM1-ROTOR-1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-032",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM1-STATOR-2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM1-STATOR-2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-033",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM2-STATOR-1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM2-STATOR-1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-034",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM2-STATOR-2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM2-STATOR-2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-035",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM3-ROTATOR-L.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM3-ROTATOR-L.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-036",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM3-ROTATOR-R.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM3-ROTATOR-R.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-037",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM5-STATOR.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM5-STATOR.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-038",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM6-RORATOR-1.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM6-RORATOR-1.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-039",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-RSM6-RORATOR-2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-RSM6-RORATOR-2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-040",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-SLIDER-FIX.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-SLIDER-FIX.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-041",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-SPACE-M4-STATOR.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-SPACE-M4-STATOR.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-042",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-SPACE-UP-2.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-SPACE-UP-2.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-043",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-Upper-Limit_L.stp",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-Upper-Limit_L.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-044",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS/Metal_Parts",
          "name": "2-Upper-Limit_R.stp",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/Metal_Parts/2-Upper-Limit_R.stp",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-file-045",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "hardware/reBot_B601_RS",
          "name": "reBot_B601_RS_v1.0_20260625.step",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hardware/reBot_B601_RS/reBot_B601_RS_v1.0_20260625.step",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-01",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "RobStride RS00 brushless motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "RobStride RS00",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Four RS00 motors are published in the responsibility-party RS table.",
          "role": "RS-branch joint actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-02",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "RobStride RS06 brushless motor",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "RobStride RS06",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three RS06 motors are published; the selected table does not bind each motor model to a numbered joint.",
          "role": "RS-branch joint and gripper actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-03",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "RS CAN-to-USB driver board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One CAN-to-USB driver board is published without an exact board model or revision in the table.",
          "role": "External-host to RS motor-bus interface",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-04",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "XT30 2+2 power separation board",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One power separation board is published; circuit revision, protection and connector pinout are not fixed by the row.",
          "role": "RS-branch power and communication distribution boundary",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-05",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 320 mm, both ends angled",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 320 mm / two angled ends",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The row publishes 1+ and requires custom fabrication; RCI records one minimum source quantity, not a final as-built count.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-06",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 200 mm, both ends angled",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 200 mm / two angled ends",
          "variant": null,
          "quantity": 4,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The row publishes 4+ and requires custom fabrication; RCI records four as the minimum source quantity.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-07",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — 300 mm, one angled end",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / 300 mm / one angled end",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The row publishes 1+ and requires custom fabrication; the other end geometry is not stated.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-08",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "XT30 2+2 harness — both ends straight",
          "itemClass": "cable",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "XT30 2+2 / two straight ends",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The row publishes 1+ without a cable length; RCI records one as the minimum source quantity.",
          "role": "Combined motor power and communication harness",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "rebot-b601-rs-v10-item-09",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "sourceId": "rebot-b601-rs-production-tree",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceSection": "B601 RS purchased parts, power separation and XT30 2+2 harness rows",
          "name": "Optional Mean Well LRS-600-48 supply",
          "itemClass": "power",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "LRS-600-48",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The arm ships without a supply by default; the responsibility-party README presents one LRS-600-48 as an optional build path.",
          "role": "Optional 48 V / 12.5 A external source",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 54,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "rebot-b601-rs-external-host",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "label": "External host for the RS CAN-to-USB path",
          "nodeKind": "external-host",
          "configurationBoundary": "The RS branch publishes a CAN-to-USB driver board, which establishes an external USB-host boundary without identifying one computer.",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-03"
          ],
          "identityBoundary": "Computer model, operating system, USB controller, software stack and physical host are not frozen."
        },
        {
          "id": "rebot-b601-rs-can-usb-board",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "label": "One generic RS CAN-to-USB driver board",
          "nodeKind": "control",
          "configurationBoundary": "One CAN-to-USB driver board in the fixed RS purchased-parts table.",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-03"
          ],
          "identityBoundary": "The table leaves the model blank; PCB revision, firmware, USB identity, transceiver, CAN bitrate, termination and connector pinout are not frozen."
        },
        {
          "id": "rebot-b601-rs00-bank",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "label": "Four RobStride RS00 actuator positions",
          "nodeKind": "actuation",
          "configurationBoundary": "Four exact RobStride RS00 rows in the B601 RS purchased-parts table.",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-01"
          ],
          "identityBoundary": "Joint assignment, serials, firmware, CAN IDs, calibration, thermal state and physical installation are not published."
        },
        {
          "id": "rebot-b601-rs06-bank",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "label": "Three RobStride RS06 actuator positions",
          "nodeKind": "actuation",
          "configurationBoundary": "Three exact RobStride RS06 rows in the B601 RS purchased-parts table.",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-02"
          ],
          "identityBoundary": "The source does not bind these positions to joint numbers or isolate the gripper motor; serials, firmware, CAN IDs, calibration and installed state are unknown."
        },
        {
          "id": "rebot-b601-rs-power-separation-harness",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "label": "XT30 2+2 power-separation board and RS harness boundary",
          "nodeKind": "power",
          "configurationBoundary": "One power-separation board and four minimum-quantity XT30 2+2 cable variants in the fixed RS table.",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-04",
            "rebot-b601-rs-v10-item-05",
            "rebot-b601-rs-v10-item-06",
            "rebot-b601-rs-v10-item-07",
            "rebot-b601-rs-v10-item-08"
          ],
          "identityBoundary": "Board circuitry/revision, pinout, protection, connector ratings, branch-to-joint map and final quantities behind “1+” or “4+” remain unresolved."
        },
        {
          "id": "rebot-b601-rs-optional-48v-source",
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "label": "Optional LRS-600-48 external supply path",
          "nodeKind": "power",
          "configurationBoundary": "The RS arm ships without a power supply by default; the selected README presents one 48 V / 12.5 A LRS-600-48 path, while the root README separately mentions a stronger 48 V / 25 A option.",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-09"
          ],
          "identityBoundary": "This is an optional source selection, not standard installed equipment. Mains region, wiring, safety acceptance, output setting, protection coordination, 25 A alternative and physical identity are not validated."
        }
      ],
      "interfaceRelations": [
        {
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS/README.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-rs-host-can-usb",
          "fromNodeId": "rebot-b601-rs-external-host",
          "toNodeId": "rebot-b601-rs-can-usb-board",
          "relationType": "data-control",
          "interfaceLabel": "USB host to one generic CAN-to-USB driver board",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-03"
          ],
          "evidenceText": "The fixed RS purchased-parts table publishes one CAN-to-USB driver board, supporting a host-side USB to motor-side CAN boundary without fixing one board identity.",
          "unresolved": [
            "Host, USB connector/mode, board SKU/revision, firmware, driver, CAN channel/bitrate, termination and captured traffic are not published.",
            "RCI has not enumerated the board or observed CAN frames."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS/README.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-rs-can-rs00",
          "fromNodeId": "rebot-b601-rs-can-usb-board",
          "toNodeId": "rebot-b601-rs00-bank",
          "relationType": "data-control",
          "interfaceLabel": "RobStride control/feedback path over the RS XT30 2+2 harness surface",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-01",
            "rebot-b601-rs-v10-item-03",
            "rebot-b601-rs-v10-item-05",
            "rebot-b601-rs-v10-item-06",
            "rebot-b601-rs-v10-item-07",
            "rebot-b601-rs-v10-item-08"
          ],
          "evidenceText": "The responsibility-party RS table jointly publishes the CAN-to-USB board, four RS00 motors and four XT30 2+2 harness variants.",
          "unresolved": [
            "Bus order, joint allocation, node IDs, bitrate, termination, pinout, cable assignment, firmware and feedback configuration are not frozen.",
            "RCI has not commanded or read an RS00."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS/README.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-rs-can-rs06",
          "fromNodeId": "rebot-b601-rs-can-usb-board",
          "toNodeId": "rebot-b601-rs06-bank",
          "relationType": "data-control",
          "interfaceLabel": "RobStride control/feedback path over the RS XT30 2+2 harness surface",
          "directionality": "bidirectional",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-02",
            "rebot-b601-rs-v10-item-03",
            "rebot-b601-rs-v10-item-05",
            "rebot-b601-rs-v10-item-06",
            "rebot-b601-rs-v10-item-07",
            "rebot-b601-rs-v10-item-08"
          ],
          "evidenceText": "The responsibility-party RS table jointly publishes the CAN-to-USB board, three RS06 motors and four XT30 2+2 harness variants.",
          "unresolved": [
            "Bus order, joint/gripper allocation, node IDs, bitrate, termination, pinout, cable assignment, firmware and feedback configuration are not frozen.",
            "RCI has not commanded or read an RS06."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS/README.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-rs-48v-power-separation",
          "fromNodeId": "rebot-b601-rs-optional-48v-source",
          "toNodeId": "rebot-b601-rs-power-separation-harness",
          "relationType": "power",
          "interfaceLabel": "Optional 48 V source into the XT30 2+2 separation/harness surface",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-04",
            "rebot-b601-rs-v10-item-09"
          ],
          "evidenceText": "The RS README says the arm ships without a supply, presents one optional 48 V / 12.5 A source, and publishes one XT30 2+2 power separation board.",
          "unresolved": [
            "Mains assembly, output adjustment, XT60/XT30 chain, polarity, protection, connector ratings, 25 A alternative and board circuitry are not frozen or measured.",
            "This optional path must not be represented as standard installed equipment."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS/README.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-rs-separation-rs00-power",
          "fromNodeId": "rebot-b601-rs-power-separation-harness",
          "toNodeId": "rebot-b601-rs00-bank",
          "relationType": "power",
          "interfaceLabel": "48 V-class RS branch through separation board and XT30 2+2 harnesses",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-01",
            "rebot-b601-rs-v10-item-04",
            "rebot-b601-rs-v10-item-05",
            "rebot-b601-rs-v10-item-06",
            "rebot-b601-rs-v10-item-07",
            "rebot-b601-rs-v10-item-08"
          ],
          "evidenceText": "The RS table publishes the separation board, RS00 motor bank and combined XT30 2+2 harness surface under the 48 V RS configuration.",
          "unresolved": [
            "Branch topology, pinout, gauge, connector ratings, current allocation, fuse, inrush, voltage drop, thermal and fault behavior are not published or measured.",
            "RCI has not applied power."
          ]
        },
        {
          "robotRecordId": "bom-audit-rebot-b601-rs-v10",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Seeed-Projects/reBot-DevArm commit a0c709638a341d6b12b005f22f5592c4b1579f56",
          "sourceUrl": "https://github.com/Seeed-Projects/reBot-DevArm/blob/a0c709638a341d6b12b005f22f5592c4b1579f56/hardware/reBot_B601_RS/README.md",
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13",
          "id": "rebot-b601-rs-separation-rs06-power",
          "fromNodeId": "rebot-b601-rs-power-separation-harness",
          "toNodeId": "rebot-b601-rs06-bank",
          "relationType": "power",
          "interfaceLabel": "48 V-class RS branch through separation board and XT30 2+2 harnesses",
          "directionality": "source-to-target",
          "sourceBomItemIds": [
            "rebot-b601-rs-v10-item-02",
            "rebot-b601-rs-v10-item-04",
            "rebot-b601-rs-v10-item-05",
            "rebot-b601-rs-v10-item-06",
            "rebot-b601-rs-v10-item-07",
            "rebot-b601-rs-v10-item-08"
          ],
          "evidenceText": "The RS table publishes the separation board, RS06 motor bank and combined XT30 2+2 harness surface under the 48 V RS configuration.",
          "unresolved": [
            "Joint/gripper branch topology, pinout, gauge, connector ratings, current allocation, fuse, inrush, voltage drop, thermal and fault behavior are not published or measured.",
            "RCI has not applied power."
          ]
        }
      ]
    },
    {
      "id": "bom-audit-lekiwi-5v",
      "platform": "LeKiwi 5 V mobile manipulator",
      "responsibilityParty": "SIGRobotics UIUC LeKiwi project",
      "morphology": "mobile-manipulator",
      "platformRevisionBoundary": "Shared structure, sensor/compute and other rows plus only the 5 V base and 5 V SO-101 arm rows at LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033.",
      "selectedBomSurface": "LeKiwi BOM 5 V configuration",
      "bomFormat": "nested-markdown-tables",
      "declaredEntryCount": 15,
      "entryCountBoundary": "Eight shared rows plus four 5 V base rows and three 5 V arm-set rows. Summary/price rows are excluded.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The BOM is commit-addressable but not tied to a release tag, receipts or a physical unit.",
      "lifecycleBoundary": "The source publishes mutually exclusive 5 V, 12 V and wired paths. This record selects 5 V only.",
      "strongestPublishedEvidence": "A quantified 5 V system path spanning structure, Raspberry Pi compute, cameras, base servos, power bank and a two-arm teleoperation set.",
      "largestRebuildGap": "Generic bundles, mutable retail links and absent unit-level wiring/serial evidence prevent a complete build conclusion.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical conflict selected.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "This is an RCI configuration normalization of responsibility-party rows, not a price guarantee, electrical certification or independent build.",
      "sources": [
        {
          "id": "lekiwi-5v-bom",
          "title": "LeKiwi bill of materials",
          "url": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/BOM.md",
          "location": "Shared rows and 5 V sections",
          "revision": "Commit efa608d · selected 5 V path"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "lekiwi-5v",
      "href": "/robots/lekiwi-5v/",
      "morphologyLabel": "Mobile manipulator",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "lekiwi-5v-item-01",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "4-inch omni wheels",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three wheels are published in the selected configuration.",
          "role": "Holonomic mobile-base contact",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-02",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "M2/M3/M4 assorted screw set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One assortment is published; individual installed fastener counts are not enumerated.",
          "role": "Assembly fasteners",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-03",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "Raspberry Pi 5 (4 GB)",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Raspberry Pi 5 4 GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One board is published.",
          "role": "On-robot compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-04",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "USB camera",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Two generic USB cameras are published.",
          "role": "Robot visual sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-05",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "microSD card",
          "itemClass": "storage",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One card is published without fixed capacity/model identity.",
          "role": "System storage",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-06",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "Table clamp 4 pcs",
          "itemClass": "fixture",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One four-clamp bundle is published.",
          "role": "Teleoperation fixture",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-07",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "Screwdriver set",
          "itemClass": "tool",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One set is published and is not installed robot hardware.",
          "role": "Assembly tooling",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-08",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "USB-C to USB-A cable 2 pcs",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One two-cable bundle is published.",
          "role": "Controller/host connection",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-09",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "20000 mAh 85 W power bank",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One power bank is published.",
          "role": "5 V configuration energy source",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-10",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "STS3215 servo — base",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "STS3215",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three servos are published in the 5 V base table.",
          "role": "Mobile-base wheel actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-11",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "USB-C cable 2 pcs",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One two-cable bundle is published.",
          "role": "5 V base power/data cable bundle",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-12",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "USB-C to DC cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One cable is published.",
          "role": "Power conversion interconnect",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-13",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "STS3215 servo — two-arm set",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "STS3215",
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve servos are published for the two-arm 5 V teleoperation set.",
          "role": "Leader/follower arm actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-14",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "Motor control board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Two boards are published.",
          "role": "Two-arm servo control",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-5v-item-15",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Shared rows plus 5 V configuration tables",
          "name": "5 V power supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One supply is published.",
          "role": "Two-arm external supply",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 15,
      "manufacturerRelations": [],
      "componentRelations": [
        {
          "id": "robot-component-lekiwi-5v-raspberry-pi-5",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "robotBomItemId": "lekiwi-5v-item-03",
          "componentId": "cmp-raspberry-pi-5-family",
          "componentSlug": "raspberry-pi-5-family",
          "componentName": "Raspberry Pi 5",
          "componentOfficialModel": "Raspberry Pi 5",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 4 GB",
          "publishedQuantity": 1,
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "identityEvidence": "The pinned LeKiwi 5 V configuration publishes one Raspberry Pi 5 with 4 GB RAM. RCI maps it to the family record without inferring a PCB revision.",
          "quantityBoundary": "One board is published for the selected 5 V configuration. No serial, receipt, lot, PCB revision or as-built inspection is available.",
          "evidenceBoundary": "The relation does not prove power or cooling sufficiency, software/peripheral compatibility, current availability, endorsement or an RCI robot test.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [
        {
          "id": "lekiwi-5v-vs-12v",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "relationType": "standard-configuration-change",
          "from": "LeKiwi 5 V configuration",
          "to": "LeKiwi 12 V configuration",
          "effectiveBoundary": "The official BOM presents 5 V and 12 V as alternatives and directs first-time builders to 5 V while describing 12 V as the higher-lift path.",
          "systemImpact": "Base servos, battery/power conversion and two-arm power/actuator rows change; the paths must not be merged as simultaneously installed.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "lekiwi-5v-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "unresolved": "No unit-level validation quantifies the performance difference within this RCI record."
        }
      ],
      "topologyNodes": [
        {
          "id": "lekiwi-5v-pi5",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "label": "Raspberry Pi 5 (4 GB) onboard compute",
          "nodeKind": "compute",
          "configurationBoundary": "One Raspberry Pi 5 (4 GB) in the selected LeKiwi 5 V configuration.",
          "sourceBomItemIds": [
            "lekiwi-5v-item-03"
          ],
          "identityBoundary": "The source fixes family, RAM option and quantity but not PCB revision, serial, storage image, software checkout or observed ports."
        },
        {
          "id": "lekiwi-5v-camera-pair",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "label": "Two optional-SKU USB camera positions",
          "nodeKind": "control",
          "configurationBoundary": "Two generic USB camera BOM rows with responsibility-party mounting instructions for either listed camera option.",
          "sourceBomItemIds": [
            "lekiwi-5v-item-04",
            "lekiwi-5v-item-08"
          ],
          "identityBoundary": "The configuration does not select one camera SKU, sensor, lens, USB descriptor, calibration or base/wrist serial mapping."
        },
        {
          "id": "lekiwi-5v-base-controller",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "label": "Assembly-described mobile-base servo controller",
          "nodeKind": "control",
          "configurationBoundary": "The pinned assembly mounts one servo driver for the three drive servos and connects its USB cable to Raspberry Pi 5.",
          "sourceBomItemIds": [],
          "identityBoundary": "The selected 5 V BOM does not isolate an exact base-controller SKU; the two published motor-control-board rows belong to the separate two-arm set."
        },
        {
          "id": "lekiwi-5v-drive-servos",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "label": "Three 5 V-configuration STS3215 drive servos",
          "nodeKind": "actuation",
          "configurationBoundary": "Three STS3215 rows in the selected 5 V mobile-base table.",
          "sourceBomItemIds": [
            "lekiwi-5v-item-10"
          ],
          "identityBoundary": "The BOM does not freeze exact voltage/reduction suffix, serials, IDs, offsets, chain order or installed condition."
        },
        {
          "id": "lekiwi-5v-power-bank",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "label": "20,000 mAh / 85 W power-bank branch",
          "nodeKind": "power",
          "configurationBoundary": "One power bank published for the 5 V configuration and mounted on the lower plate by the pinned assembly.",
          "sourceBomItemIds": [
            "lekiwi-5v-item-09",
            "lekiwi-5v-item-11",
            "lekiwi-5v-item-12"
          ],
          "identityBoundary": "Retail identity is mutable; output profile, port selection, USB-C/DC cable behavior, protection, capacity under load and measured rails are not frozen."
        }
      ],
      "interfaceRelations": [
        {
          "id": "lekiwi-5v-pi5-usb-cameras",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "fromNodeId": "lekiwi-5v-pi5",
          "toNodeId": "lekiwi-5v-camera-pair",
          "relationType": "data-control",
          "interfaceLabel": "Two camera USB cables connected directly to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-5v-item-03",
            "lekiwi-5v-item-04",
            "lekiwi-5v-item-08"
          ],
          "evidenceText": "The pinned final assembly says camera USB cables can plug directly into Raspberry Pi 5; the 5 V BOM publishes one Pi, two cameras and a two-cable bundle.",
          "unresolved": [
            "Camera choice, USB port allocation, descriptor, bandwidth, calibration and concurrent capture are not frozen.",
            "RCI has not enumerated or streamed these cameras."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-5v-pi5-usb-base-controller",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "fromNodeId": "lekiwi-5v-pi5",
          "toNodeId": "lekiwi-5v-base-controller",
          "relationType": "data-control",
          "interfaceLabel": "Base servo-controller USB cable connected directly to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-5v-item-03",
            "lekiwi-5v-item-08"
          ],
          "evidenceText": "The pinned assembly mounts a servo driver, routes its USB-C-to-USB-A cable and says the controller USB cable can connect directly to Raspberry Pi 5.",
          "unresolved": [
            "The base-controller SKU is absent from the selected BOM and must not be conflated with either arm-set board.",
            "USB descriptor, serial path, baud, protocol and observed enumeration are unknown."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-5v-controller-drive-servos",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "fromNodeId": "lekiwi-5v-base-controller",
          "toNodeId": "lekiwi-5v-drive-servos",
          "relationType": "data-control",
          "interfaceLabel": "Servo-driver wires attached to three 5 V-configuration drive servos",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-5v-item-10"
          ],
          "evidenceText": "The bottom-plate assembly explicitly attaches driver wires to three drive servos; the selected 5 V table publishes three STS3215 units.",
          "unresolved": [
            "Voltage/reduction suffix, IDs, chain order, controller identity, wheel mapping and calibration are not frozen.",
            "RCI has not scanned the bus or moved a wheel."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-5v-power-bank-pi5",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "fromNodeId": "lekiwi-5v-power-bank",
          "toNodeId": "lekiwi-5v-pi5",
          "relationType": "power",
          "interfaceLabel": "5 V USB-C power branch to Raspberry Pi 5",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-5v-item-03",
            "lekiwi-5v-item-09",
            "lekiwi-5v-item-11"
          ],
          "evidenceText": "The 5 V assembly mounts the published power bank and routes a 5 V USB-C cable; final assembly connects the 5 V USB-C connector to Raspberry Pi 5.",
          "unresolved": [
            "The source does not freeze power-bank port/profile, cable, simultaneous-load allocation, protection or loaded Pi voltage.",
            "RCI has not instrumented this branch."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-5v-power-bank-base-controller",
          "robotRecordId": "bom-audit-lekiwi-5v",
          "fromNodeId": "lekiwi-5v-power-bank",
          "toNodeId": "lekiwi-5v-base-controller",
          "relationType": "power",
          "interfaceLabel": "USB-C-to-DC branch to the mobile-base servo controller",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-5v-item-09",
            "lekiwi-5v-item-12"
          ],
          "evidenceText": "The selected 5 V table publishes one power bank and one USB-C-to-DC cable; final assembly powers the servo motor controller through its DC barrel input.",
          "unresolved": [
            "Output trigger/profile, barrel dimensions, polarity, controller voltage tolerance, shared-ground topology, current margin and fault protection are not frozen.",
            "RCI has not energized the controller."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-lekiwi-wired",
      "platform": "LeKiwi wired mobile-base configuration",
      "responsibilityParty": "SIGRobotics UIUC LeKiwi project",
      "morphology": "mobile-base",
      "platformRevisionBoundary": "Only the standalone “Everything needed for the wired version” table at LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033.",
      "selectedBomSurface": "LeKiwi BOM wired-version table",
      "bomFormat": "markdown-table",
      "declaredEntryCount": 10,
      "entryCountBoundary": "Ten responsibility-party item rows; total-price summary excluded. This boundary is a wired mobile base, not the two-arm 5 V or 12 V manipulator.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "Commit-addressable table without a release-tag or unit manifest.",
      "lifecycleBoundary": "Wired is an explicit alternative to battery configurations and remains separate.",
      "strongestPublishedEvidence": "A compact quantified wired-base path including wheels, cameras, servos, control, power, hub and extension cable.",
      "largestRebuildGap": "No complete mechanical file selection, wiring diagram binding, serial evidence or independent physical build.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical conflict selected.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "The source table does not establish a dual-arm installed build; RCI labels this profile as a mobile-base configuration.",
      "sources": [
        {
          "id": "lekiwi-wired-bom",
          "title": "LeKiwi bill of materials",
          "url": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/BOM.md",
          "location": "Wired version table",
          "revision": "Commit efa608d · selected wired path"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "lekiwi-wired",
      "href": "/robots/lekiwi-wired/",
      "morphologyLabel": "Mobile base",
      "publishedDisclosureCount": 6,
      "partialDisclosureCount": 4,
      "openDisclosureCount": 2,
      "disclosureCoveragePercent": 67,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "lekiwi-wired-item-01",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "4-inch omni wheels",
          "itemClass": "mechanical-hardware",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three wheels are published.",
          "role": "Holonomic mobile-base contact",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-02",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "M2/M3/M4 assorted screw set",
          "itemClass": "fastener",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One assortment is published.",
          "role": "Assembly fasteners",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-03",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "USB camera",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 2,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Two cameras are published.",
          "role": "Visual sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-04",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "USB-C to USB-A cable 2 pcs",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-bundle-count",
          "quantityBoundary": "One two-cable bundle is published.",
          "role": "Host/controller cable bundle",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-05",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "USB-C to DC cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One cable is published.",
          "role": "Wired power path",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-06",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "STS3215 servo",
          "itemClass": "actuation",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "STS3215",
          "variant": null,
          "quantity": 3,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Three servos are published.",
          "role": "Mobile-base drive",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-07",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "Motor control board",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One board is published.",
          "role": "Base servo control",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-08",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "Power supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One supply is published.",
          "role": "Wired external power",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-09",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "USB hub",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One hub is published.",
          "role": "Host USB fan-out",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "lekiwi-wired-item-10",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceSection": "Everything needed for the wired version",
          "name": "USB-C extension cable",
          "itemClass": "cable",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One extension cable is published.",
          "role": "Wired host extension",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 10,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "lekiwi-wired-vs-battery",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "relationType": "standard-configuration-change",
          "from": "LeKiwi wired mobile base",
          "to": "LeKiwi 5 V or 12 V battery configuration",
          "effectiveBoundary": "The official BOM publishes wired as a separate cheapest alternative and gives it a standalone ten-row table.",
          "systemImpact": "Power source, host connection, USB fan-out and system scope differ; the wired record is not a full two-arm battery configuration.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "lekiwi-wired-bom",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "unresolved": "No as-built wiring diagram or independent run binds this table to one unit."
        }
      ],
      "topologyNodes": [
        {
          "id": "lekiwi-wired-host",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "External laptop host",
          "nodeKind": "external-host",
          "configurationBoundary": "Laptop endpoint named by the pinned wired assembly instructions; outside the selected ten-row BOM.",
          "sourceBomItemIds": [],
          "identityBoundary": "No host SKU, operating system, USB controller, software revision or physical port is fixed."
        },
        {
          "id": "lekiwi-wired-usbc-extension",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "Orientation-sensitive USB-C extension",
          "nodeKind": "control",
          "configurationBoundary": "One USB-C extension cable in the wired BOM, installed in the responsibility-party printed cable holder.",
          "sourceBomItemIds": [
            "lekiwi-wired-item-10"
          ],
          "identityBoundary": "The guide specifies plug orientation but not one immutable cable lot, e-marker, negotiated mode or measured signal integrity."
        },
        {
          "id": "lekiwi-wired-usb-hub",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "Wired USB hub fan-out",
          "nodeKind": "control",
          "configurationBoundary": "One USB hub in the selected wired BOM and the assembly-described hub holder/cable fan-out.",
          "sourceBomItemIds": [
            "lekiwi-wired-item-09"
          ],
          "identityBoundary": "Retail link and hub implementation are mutable; chipset, descriptors, port numbering, power behavior and bandwidth are not frozen."
        },
        {
          "id": "lekiwi-wired-camera-pair",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "Two wired USB cameras",
          "nodeKind": "control",
          "configurationBoundary": "Two generic USB cameras connected through the assembly-described wired cable fan-out.",
          "sourceBomItemIds": [
            "lekiwi-wired-item-03",
            "lekiwi-wired-item-04"
          ],
          "identityBoundary": "Camera option, sensor, lens, descriptors, cable mapping, calibration and concurrent throughput are unresolved."
        },
        {
          "id": "lekiwi-wired-base-controller",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "Wired mobile-base motor-control board",
          "nodeKind": "control",
          "configurationBoundary": "One motor-control board in the selected wired BOM, connected into the wired USB fan-out by the assembly.",
          "sourceBomItemIds": [
            "lekiwi-wired-item-07",
            "lekiwi-wired-item-04"
          ],
          "identityBoundary": "No exact controller manufacturer/model, firmware, descriptor, serial port, protocol or current rating is fixed."
        },
        {
          "id": "lekiwi-wired-drive-servos",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "Three wired-version STS3215 drive servos",
          "nodeKind": "actuation",
          "configurationBoundary": "Three STS3215 units in the selected wired mobile-base table.",
          "sourceBomItemIds": [
            "lekiwi-wired-item-06"
          ],
          "identityBoundary": "Voltage/reduction suffix, serials, IDs, chain order, calibration and physical condition are not fixed."
        },
        {
          "id": "lekiwi-wired-external-power",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "label": "External wired power supply and USB-C-to-DC lead",
          "nodeKind": "power",
          "configurationBoundary": "One generic power supply and one USB-C-to-DC cable in the wired BOM.",
          "sourceBomItemIds": [
            "lekiwi-wired-item-05",
            "lekiwi-wired-item-08"
          ],
          "identityBoundary": "Output voltage/current, connector dimensions, polarity, grounding, protection, cable trigger behavior and loaded measurements are not published in the selected table."
        }
      ],
      "interfaceRelations": [
        {
          "id": "lekiwi-wired-host-extension",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "fromNodeId": "lekiwi-wired-host",
          "toNodeId": "lekiwi-wired-usbc-extension",
          "relationType": "data-control",
          "interfaceLabel": "Laptop USB-C link with responsibility-party-specified plug orientation",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-wired-item-10"
          ],
          "evidenceText": "The pinned wired assembly connects the extension to a laptop and explicitly warns that the marked plug orientation determines whether cameras and controller are detected.",
          "unresolved": [
            "Host port, cable lot/e-marker, negotiated mode, orientation behavior across hosts, insertion loss and observed enumeration are not frozen.",
            "RCI has not connected this cable."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-wired-extension-hub",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "fromNodeId": "lekiwi-wired-usbc-extension",
          "toNodeId": "lekiwi-wired-usb-hub",
          "relationType": "data-control",
          "interfaceLabel": "USB-C extension into mounted USB hub fan-out",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-wired-item-09",
            "lekiwi-wired-item-10"
          ],
          "evidenceText": "The assembly adds the cable holder and USB hub holder, then attaches the extension and downstream device cables in the illustrated wired configuration.",
          "unresolved": [
            "Hub chipset, upstream port identity, power source, negotiated topology, bandwidth and fault behavior are not frozen.",
            "RCI has not enumerated the hub."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-wired-hub-cameras",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "fromNodeId": "lekiwi-wired-usb-hub",
          "toNodeId": "lekiwi-wired-camera-pair",
          "relationType": "data-control",
          "interfaceLabel": "Two camera cables on the wired USB fan-out",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-wired-item-03",
            "lekiwi-wired-item-04",
            "lekiwi-wired-item-09"
          ],
          "evidenceText": "The pinned wired instructions attach cables for two cameras, the controller and extension at the mounted hub area; the BOM publishes two cameras and one hub.",
          "unresolved": [
            "Camera SKUs, hub port allocation, descriptors, simultaneous bandwidth and calibration are not frozen.",
            "RCI has not captured either stream."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-wired-hub-controller",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "fromNodeId": "lekiwi-wired-usb-hub",
          "toNodeId": "lekiwi-wired-base-controller",
          "relationType": "data-control",
          "interfaceLabel": "Motor-control-board USB link on the wired fan-out",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-wired-item-04",
            "lekiwi-wired-item-07",
            "lekiwi-wired-item-09"
          ],
          "evidenceText": "The wired assembly explicitly groups the motor-control-board cable with the two camera cables and USB-C extender; the selected BOM publishes one board and one hub.",
          "unresolved": [
            "Controller model, descriptor, serial device, protocol, baud and hub port are not frozen.",
            "RCI has not enumerated or exchanged control traffic."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-wired-controller-servos",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "fromNodeId": "lekiwi-wired-base-controller",
          "toNodeId": "lekiwi-wired-drive-servos",
          "relationType": "data-control",
          "interfaceLabel": "Motor-control-board bus to three wired-version STS3215 drive servos",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/Assembly.md",
          "sourceBomItemIds": [
            "lekiwi-wired-item-06",
            "lekiwi-wired-item-07"
          ],
          "evidenceText": "The pinned base assembly attaches servo-driver wires to three drive servos; the wired table publishes one board and three STS3215 units.",
          "unresolved": [
            "Servo submodel, voltage, IDs, bus order, wheel mapping, calibration and controller firmware are not frozen.",
            "RCI has not scanned or moved this bus."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "lekiwi-wired-power-controller",
          "robotRecordId": "bom-audit-lekiwi-wired",
          "fromNodeId": "lekiwi-wired-external-power",
          "toNodeId": "lekiwi-wired-base-controller",
          "relationType": "power",
          "interfaceLabel": "External supply through USB-C-to-DC cable to controller barrel input",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "SIGRobotics-UIUC/LeKiwi commit efa608d7ee5a495a4803b1d28cd0c955b4f1e033",
          "sourceUrl": "https://github.com/SIGRobotics-UIUC/LeKiwi/blob/efa608d7ee5a495a4803b1d28cd0c955b4f1e033/BOM.md",
          "sourceBomItemIds": [
            "lekiwi-wired-item-05",
            "lekiwi-wired-item-07",
            "lekiwi-wired-item-08"
          ],
          "evidenceText": "The wired BOM publishes one power supply, one USB-C-to-DC cable and one motor-control board; the final assembly powers the controller through the DC barrel input.",
          "unresolved": [
            "Voltage/current, trigger behavior, barrel dimensions, polarity, protection, grounding and loaded measurements are not published.",
            "RCI has not energized this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-q8bot-v25",
      "platform": "Q8bot hardware v2.5 release",
      "responsibilityParty": "Q8bot / ZeroWire Robotics",
      "morphology": "quadruped",
      "platformRevisionBoundary": "GitHub release v1.2.1 asset hw-v2.5.zip, published 2025-11-11.",
      "selectedBomSurface": "hw-v2.5.zip archive file manifest",
      "bomFormat": "release-archive",
      "declaredEntryCount": 38,
      "entryCountBoundary": "38 distinct responsibility-party file paths in the selected immutable source boundary. A file path is an engineering evidence record, not an installed quantity or a unique procured component.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "The release binds software v1.2.1 to hardware archive v2.5; prior hardware v2.2/v2.4 assets remain historical alternatives.",
      "strongestPublishedEvidence": "Release-addressable CAD, printable files, PCB design sources, fabrication outputs, placement and BOM artifacts.",
      "largestRebuildGap": "RCI has not parsed the spreadsheet line items, ordered the PCB, built the robot or verified the archive against one physical unit.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "not-published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "q8bot-hw-v25-release",
          "title": "Q8bot release v1.2.1 — hw-v2.5.zip",
          "url": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "location": "38 files spanning CAD, printable variants, SolidWorks sources, Altium sources, Gerbers, placement, BOM and schematics",
          "revision": "GitHub release v1.2.1 asset hw-v2.5.zip, published 2025-11-11."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "q8bot-hardware-v2-5",
      "href": "/robots/q8bot-hardware-v2-5/",
      "morphologyLabel": "Quadruped",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 4,
      "disclosureCoveragePercent": 46,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "q8bot-v25-file-001",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD",
          "name": "Q8bot_rev2_5_FDM.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8bot_rev2_5_FDM.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-002",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD",
          "name": "Q8bot_rev2_5_MJF.STEP",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8bot_rev2_5_MJF.STEP",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-003",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_FDM",
          "name": "PLA_Lower_Leg_Left_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_FDM/PLA_Lower_Leg_Left_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-004",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_FDM",
          "name": "PLA_Lower_Leg_Right_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_FDM/PLA_Lower_Leg_Right_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-005",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_FDM",
          "name": "PLA_Upper_Leg_Short_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_FDM/PLA_Upper_Leg_Short_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-006",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_FDM",
          "name": "PLA_Upper_Leg_Tall_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_FDM/PLA_Upper_Leg_Tall_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-007",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_FDM",
          "name": "Q8bot_Frame_FDM_PRINT2.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_FDM/Q8bot_Frame_FDM_PRINT2.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-008",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_MJF",
          "name": "MJF_Frame_PRINT2.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_MJF/MJF_Frame_PRINT2.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-009",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_MJF",
          "name": "MJF_Lower_Leg_Left_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_MJF/MJF_Lower_Leg_Left_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-010",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_MJF",
          "name": "MJF_Lower_Leg_Right_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_MJF/MJF_Lower_Leg_Right_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-011",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_MJF",
          "name": "MJF_Upper_Leg_Short_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_MJF/MJF_Upper_Leg_Short_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-012",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/Q8_V2.5_MJF",
          "name": "MJF_Upper_Leg_Tall_PRINT4.STL",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/Q8_V2.5_MJF/MJF_Upper_Leg_Tall_PRINT4.STL",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-013",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "692ZZ_Ball_Bearing_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/692ZZ_Ball_Bearing_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-014",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Batt_Case_keystone-PN1087_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Batt_Case_keystone-PN1087_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-015",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Batt_Clip_keystone-PN1087-1_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Batt_Clip_keystone-PN1087-1_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-016",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Batt_Clip_keystone-PN1087-2_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Batt_Clip_keystone-PN1087-2_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-017",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Batt_KeepPower_14500_P1450C2_20250303export.SLDPRT",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Batt_KeepPower_14500_P1450C2_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-018",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Conn_EHR-3_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Conn_EHR-3_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-019",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "M2_Tapping_Screw_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/M2_Tapping_Screw_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-020",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8bot_20250303export.SLDASM",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8bot_20250303export.SLDASM",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-021",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8bot_Leg_SubAssm_20250303export.SLDASM",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8bot_Leg_SubAssm_20250303export.SLDASM",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-022",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8bot_Lower_Leg_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8bot_Lower_Leg_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-023",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8bot_Main_Frame_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8bot_Main_Frame_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-024",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8bot_Upper_Leg_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8bot_Upper_Leg_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-025",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8_PCB_Placeholder_20250303export.SLDPRT",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8_PCB_Placeholder_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-026",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "Q8_PCB_V2.4_20250303export.SLDPRT",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/Q8_PCB_V2.4_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-027",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/CAD/SolidWorks Source File",
          "name": "XL330_M077_T_20250303export.SLDPRT",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/CAD/SolidWorks Source File/XL330_M077_T_20250303export.SLDPRT",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-028",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA/Altium Source Files",
          "name": "Q8_V2.5.PrjPcb",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Altium Source Files/Q8_V2.5.PrjPcb",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-029",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA/Altium Source Files",
          "name": "Q8_V2.5.PrjPcbStructure",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Altium Source Files/Q8_V2.5.PrjPcbStructure",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-030",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA/Altium Source Files",
          "name": "Q8_V2.5_Brd.PcbDoc",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Altium Source Files/Q8_V2.5_Brd.PcbDoc",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-031",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA/Altium Source Files",
          "name": "Q8_V2.5_Sch.SchDoc",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Altium Source Files/Q8_V2.5_Sch.SchDoc",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-032",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Gerbers_20251110.zip",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Gerbers_20251110.zip",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-033",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Pick Place for Q8_V2.5_Brd (Read Friendly).xlsx",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Pick Place for Q8_V2.5_Brd (Read Friendly).xlsx",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-034",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Pick Place for Q8_V2.5_Brd.csv",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Pick Place for Q8_V2.5_Brd.csv",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-035",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Pick Place for Q8_V2.5_Brd_JLCPCB.xlsx",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Pick Place for Q8_V2.5_Brd_JLCPCB.xlsx",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-036",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Q8_V2.5_Assembly_Drawings.pdf",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Q8_V2.5_Assembly_Drawings.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-037",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Q8_V2.5_BOM_PCBWay.xlsx",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Q8_V2.5_BOM_PCBWay.xlsx",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "q8bot-v25-file-038",
          "robotRecordId": "bom-audit-q8bot-v25",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceSection": "hw-v2.5/PCBA",
          "name": "Q8_V2.5_Schematics_20251110Export.pdf",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "hw-v2.5/PCBA/Q8_V2.5_Schematics_20251110Export.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        }
      ],
      "normalizedBomItemCount": 38,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "q8bot-v24-to-v25",
          "robotRecordId": "bom-audit-q8bot-v25",
          "relationType": "version-upgrade",
          "from": "Q8bot hardware v2.4",
          "to": "Q8bot hardware v2.5",
          "effectiveBoundary": "GitHub releases v1.1.0/v1.2.0 carry hw-v2.4.zip while v1.2.1 carries hw-v2.5.zip.",
          "systemImpact": "CAD/print, PCB design, placement, fabrication and BOM artifacts must remain attached to the selected hardware archive version.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "q8bot-hw-v25-release",
          "sourceRevision": "Q8bot GitHub release v1.2.1",
          "unresolved": "RCI has not computed a file-level v2.4-to-v2.5 semantic delta or built either revision."
        }
      ],
      "topologyNodes": [
        {
          "id": "q8bot-v25-xiao-esp32c3",
          "robotRecordId": "bom-audit-q8bot-v25",
          "label": "Seeed Studio XIAO ESP32C3 main controller",
          "nodeKind": "compute",
          "configurationBoundary": "U1 on the Q8_V2.5 schematic inside release v1.2.1 hw-v2.5.zip.",
          "sourceBomItemIds": [
            "q8bot-v25-file-031",
            "q8bot-v25-file-038"
          ],
          "identityBoundary": "The release binds the schematic and PCB source, but not one assembled board serial, flashed firmware hash, radio identity or observed pin state."
        },
        {
          "id": "q8bot-v25-ttl-transceiver",
          "robotRecordId": "bom-audit-q8bot-v25",
          "label": "SN74LVC2G241 DYNAMIXEL TTL direction buffer",
          "nodeKind": "control",
          "configurationBoundary": "U2 and its TXD/RXD/TX_EN nets on the Q8_V2.5 schematic.",
          "sourceBomItemIds": [
            "q8bot-v25-file-031",
            "q8bot-v25-file-038"
          ],
          "identityBoundary": "Schematic identity does not prove the populated component lot, logic levels under load, direction timing or measured bus waveform."
        },
        {
          "id": "q8bot-v25-eight-robot-ports",
          "robotRecordId": "bom-audit-q8bot-v25",
          "label": "Eight three-pin TTL/power robot connectors",
          "nodeKind": "control",
          "configurationBoundary": "J1–J8 on the Q8_V2.5 schematic; four use DXL_P2 and four use DXL_PWR while sharing TTL and ground.",
          "sourceBomItemIds": [
            "q8bot-v25-file-030",
            "q8bot-v25-file-033",
            "q8bot-v25-file-034",
            "q8bot-v25-file-035",
            "q8bot-v25-file-038"
          ],
          "identityBoundary": "The eight ports are PCB endpoints, not proof of eight attached actuators, connector population, cable polarity or one robot wiring map."
        },
        {
          "id": "q8bot-v25-battery-pair",
          "robotRecordId": "bom-audit-q8bot-v25",
          "label": "Two-cell battery-holder input domain",
          "nodeKind": "power",
          "configurationBoundary": "BT1/BT2 series holder representation and VBAT net on the Q8_V2.5 schematic.",
          "sourceBomItemIds": [
            "q8bot-v25-file-013",
            "q8bot-v25-file-014",
            "q8bot-v25-file-015",
            "q8bot-v25-file-016",
            "q8bot-v25-file-017",
            "q8bot-v25-file-038"
          ],
          "identityBoundary": "Cell chemistry, exact cell model, series/holder assembly state, protection, polarity, capacity, charge state and measured VBAT are not frozen."
        },
        {
          "id": "q8bot-v25-dual-boost-rails",
          "robotRecordId": "bom-audit-q8bot-v25",
          "label": "Dual TPS610333 boost paths: DXL_PWR and DXL_P2",
          "nodeKind": "power",
          "configurationBoundary": "U3/U5, L1/L2 and the two switched output nets on the Q8_V2.5 schematic.",
          "sourceBomItemIds": [
            "q8bot-v25-file-030",
            "q8bot-v25-file-033",
            "q8bot-v25-file-034",
            "q8bot-v25-file-035",
            "q8bot-v25-file-038"
          ],
          "identityBoundary": "Output setpoints, current sharing, switch state, protection, efficiency, thermal behavior and measured rail voltages are not published."
        },
        {
          "id": "q8bot-v25-fuel-gauge",
          "robotRecordId": "bom-audit-q8bot-v25",
          "label": "MAX17043 battery fuel-gauge path",
          "nodeKind": "control",
          "configurationBoundary": "U4 on VBAT with SDA/SCL pull-ups to 3.3 V in the Q8_V2.5 schematic.",
          "sourceBomItemIds": [
            "q8bot-v25-file-031",
            "q8bot-v25-file-038"
          ],
          "identityBoundary": "Gauge population, configuration/model data, I²C address/readback, alert behavior and state-of-charge accuracy are not observed."
        }
      ],
      "interfaceRelations": [
        {
          "id": "q8bot-v25-xiao-ttl-buffer",
          "robotRecordId": "bom-audit-q8bot-v25",
          "fromNodeId": "q8bot-v25-xiao-esp32c3",
          "toNodeId": "q8bot-v25-ttl-transceiver",
          "relationType": "data-control",
          "interfaceLabel": "TXD, RXD and TX_EN direction-control path at 3.3 V logic",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceUrl": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "sourceBomItemIds": [
            "q8bot-v25-file-031",
            "q8bot-v25-file-038"
          ],
          "evidenceText": "The Q8_V2.5 schematic connects XIAO ESP32C3 TXD/RXD/TX_EN nets to SN74LVC2G241 and states that TX_EN switches between transmit and receive.",
          "unresolved": [
            "Firmware pin configuration, baud, enable timing, populated buffer identity, logic margins and measured waveforms are not frozen.",
            "RCI has not powered or probed the board."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "q8bot-v25-buffer-eight-ttl-ports",
          "robotRecordId": "bom-audit-q8bot-v25",
          "fromNodeId": "q8bot-v25-ttl-transceiver",
          "toNodeId": "q8bot-v25-eight-robot-ports",
          "relationType": "data-control",
          "interfaceLabel": "Shared half-duplex DYNAMIXEL TTL net to J1–J8",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceUrl": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "sourceBomItemIds": [
            "q8bot-v25-file-030",
            "q8bot-v25-file-038"
          ],
          "evidenceText": "The v2.5 schematic fans the TTL net from the direction buffer to eight three-pin robot connectors and cites the DYNAMIXEL request-response scheme.",
          "unresolved": [
            "Connector population, attached-device count, cable mapping, actuator IDs, termination, bus loading, errors and observed traffic are not frozen.",
            "Eight PCB ports do not prove eight installed actuators."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "q8bot-v25-battery-dual-boost",
          "robotRecordId": "bom-audit-q8bot-v25",
          "fromNodeId": "q8bot-v25-battery-pair",
          "toNodeId": "q8bot-v25-dual-boost-rails",
          "relationType": "power",
          "interfaceLabel": "VBAT through two switched TPS610333 boost converters",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceUrl": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "sourceBomItemIds": [
            "q8bot-v25-file-030",
            "q8bot-v25-file-038"
          ],
          "evidenceText": "The Q8_V2.5 schematic connects VBAT through separately switched U3/U5 boost paths that generate DXL_PWR and DXL_P2.",
          "unresolved": [
            "Cell identity, series-holder wiring, enable state, output setpoints, protection, current limits, efficiency and thermal behavior are not frozen.",
            "RCI has not energized either converter."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "q8bot-v25-boost-eight-port-power",
          "robotRecordId": "bom-audit-q8bot-v25",
          "fromNodeId": "q8bot-v25-dual-boost-rails",
          "toNodeId": "q8bot-v25-eight-robot-ports",
          "relationType": "power",
          "interfaceLabel": "DXL_P2 on J1–J4 and DXL_PWR on J5–J8",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceUrl": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "sourceBomItemIds": [
            "q8bot-v25-file-030",
            "q8bot-v25-file-038"
          ],
          "evidenceText": "The v2.5 schematic assigns DXL_P2 to four robot connectors and DXL_PWR to the other four while sharing TTL and ground.",
          "unresolved": [
            "Rail voltage, port current allocation, switch behavior, connector polarity, fuse/protection and loaded droop are not published.",
            "RCI has not measured any port."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "q8bot-v25-battery-fuel-gauge",
          "robotRecordId": "bom-audit-q8bot-v25",
          "fromNodeId": "q8bot-v25-battery-pair",
          "toNodeId": "q8bot-v25-fuel-gauge",
          "relationType": "data-control",
          "interfaceLabel": "MAX17043 CELL input observes VBAT",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceUrl": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "sourceBomItemIds": [
            "q8bot-v25-file-031",
            "q8bot-v25-file-038"
          ],
          "evidenceText": "The Q8_V2.5 schematic connects MAX17043 CELL to VBAT through R5 and publishes the gauge support network.",
          "unresolved": [
            "Gauge configuration/model, cell chemistry match, sense accuracy, alert threshold and physical population are not frozen.",
            "RCI has no voltage or state-of-charge trace."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "q8bot-v25-fuel-gauge-xiao-i2c",
          "robotRecordId": "bom-audit-q8bot-v25",
          "fromNodeId": "q8bot-v25-fuel-gauge",
          "toNodeId": "q8bot-v25-xiao-esp32c3",
          "relationType": "data-control",
          "interfaceLabel": "SDA/SCL fuel-gauge path with 10 kΩ pull-ups to 3.3 V",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Q8bot GitHub release v1.2.1 / hw-v2.5.zip",
          "sourceUrl": "https://github.com/EricYufengWu/q8bot/releases/tag/v1.2.1",
          "sourceBomItemIds": [
            "q8bot-v25-file-031",
            "q8bot-v25-file-038"
          ],
          "evidenceText": "The v2.5 schematic connects U4 SDA/SCL to the XIAO controller and shows R6/R7 pull-ups to 3.3 V.",
          "unresolved": [
            "I²C address/readback, bus rate, firmware driver, alert handling, pull-up population and observed data are not frozen.",
            "The included PCBWay workbook title says Q8_V2.3 despite the v2.5 archive; RCI does not silently equate that BOM title to v2.5."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-trotbot-hardware",
      "platform": "TrotBot ROS 2 quadruped hardware boundary",
      "responsibilityParty": "TrotBot project / Vipin Mohan",
      "morphology": "quadruped",
      "platformRevisionBoundary": "README hardware specification at commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c.",
      "selectedBomSurface": "Complete Bill of Materials section — top-level hardware requirement groups",
      "bomFormat": "markdown-list",
      "declaredEntryCount": 8,
      "entryCountBoundary": "Eight RCI-normalized top-level requirement records; nested specifications remain attributes rather than extra procured line items.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "Commit-addressable documentation without numbered hardware release or unit manifest.",
      "lifecycleBoundary": "Servo selection and leg geometry are configurable; RCI does not turn recommendations into one exact actuator SKU.",
      "strongestPublishedEvidence": "Responsibility-party compute, PWM control, 12-servo topology, power domains, gamepad, printed frame and storage requirements.",
      "largestRebuildGap": "Several requirements are generic classes and the repository does not bind exact procurement identities or one as-built robot.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical conflict selected.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "partial",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "The profile records published requirements, not the claimed performance figures as RCI measurements.",
      "sources": [
        {
          "id": "trotbot-readme",
          "title": "TrotBot repository README",
          "url": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "location": "Hardware Specifications / Complete Bill of Materials",
          "revision": "Commit 4ac874e"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "trotbot-hardware",
      "href": "/robots/trotbot-hardware/",
      "morphologyLabel": "Quadruped",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 6,
      "openDisclosureCount": 3,
      "disclosureCoveragePercent": 50,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "trotbot-hardware-item-01",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "Raspberry Pi 5 (8 GB)",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Raspberry Pi 5 8 GB",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One main compute board is implied by the singular responsibility-party requirement.",
          "role": "Main compute",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-02",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "32 GB or larger microSD card",
          "itemClass": "storage",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One storage card is recommended; exact model is not fixed.",
          "role": "System storage",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-03",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "PCA9685 16-channel PWM driver",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "PCA9685",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One 16-channel driver is specified.",
          "role": "Servo PWM generation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-04",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "High-torque servo set",
          "itemClass": "actuation",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "Twelve total servos are published; exact model is configurable.",
          "role": "Three joints per leg across four legs",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-05",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "5 V 5 A USB-C supply",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One Pi supply requirement is published.",
          "role": "Raspberry Pi supply",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-06",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "6 V high-current servo power path",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "Electrical requirement is published without exact orderable supply identity.",
          "role": "Actuator power domain",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-07",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "Nintendo Pro Controller",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Nintendo Pro Controller",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One controller class is published.",
          "role": "Teleoperation input",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "trotbot-hardware-item-08",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "sourceId": "trotbot-readme",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceSection": "Hardware Specifications / Complete Bill of Materials",
          "name": "3D-printed frame and leg components",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "Custom geometry is described without a flattened printed-part count.",
          "role": "Quadruped structure",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 8,
      "manufacturerRelations": [],
      "componentRelations": [
        {
          "id": "robot-component-trotbot-raspberry-pi-5",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "robotBomItemId": "trotbot-hardware-item-01",
          "componentId": "cmp-raspberry-pi-5-family",
          "componentSlug": "raspberry-pi-5-family",
          "componentName": "Raspberry Pi 5",
          "componentOfficialModel": "Raspberry Pi 5",
          "relationState": "responsibility-party-exact-model-crosswalk",
          "publishedManufacturerLabel": "Raspberry Pi",
          "publishedPartNumber": "Raspberry Pi 5 8 GB",
          "publishedQuantity": 1,
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "identityEvidence": "The pinned TrotBot hardware requirements name one Raspberry Pi 5 with 8 GB RAM as the main compute board. RCI maps the family identity while leaving the PCB revision unknown.",
          "quantityBoundary": "One main compute board is implied by the singular requirement; no serial, PCB revision, image or unit-level as-built manifest is published.",
          "evidenceBoundary": "The relation does not prove installation in a physical TrotBot, power/cooling sufficiency, software compatibility, endorsement or RCI validation.",
          "verifiedDate": "2026-08-13"
        }
      ],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "trotbot-gamepad",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "label": "Nintendo Pro Controller command source",
          "nodeKind": "external-host",
          "configurationBoundary": "Responsibility-party recommended Bluetooth gamepad; Xbox and PlayStation controllers remain alternatives rather than simultaneous requirements.",
          "sourceBomItemIds": [
            "trotbot-hardware-item-07"
          ],
          "identityBoundary": "Controller revision, Bluetooth identity, pairing state, input mapping and observed link quality are not frozen."
        },
        {
          "id": "trotbot-pi5",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "label": "Raspberry Pi 5 (8 GB) main compute",
          "nodeKind": "compute",
          "configurationBoundary": "Responsibility-party recommended Raspberry Pi 5 8 GB control host.",
          "sourceBomItemIds": [
            "trotbot-hardware-item-01"
          ],
          "identityBoundary": "PCB revision, serial, storage image, ROS 2/CHAMP checkout, kernel and observed interfaces are not fixed."
        },
        {
          "id": "trotbot-pca9685",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "label": "PCA9685 16-channel PWM controller",
          "nodeKind": "control",
          "configurationBoundary": "One PCA9685-class board at published I²C address 0x40, with twelve of sixteen channels assigned to servos.",
          "sourceBomItemIds": [
            "trotbot-hardware-item-03"
          ],
          "identityBoundary": "Board vendor/revision, oscillator calibration, pull-ups, firmware/library version and physical channel map are not frozen."
        },
        {
          "id": "trotbot-servo-set",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "label": "Twelve configurable joint servos",
          "nodeKind": "actuation",
          "configurationBoundary": "Three servos per leg across four legs; responsibility-party source gives 4.8–7.2 V and 6 V nominal while leaving exact models configurable.",
          "sourceBomItemIds": [
            "trotbot-hardware-item-04"
          ],
          "identityBoundary": "Exact models, serials, calibration, horn geometry, channel assignment, current draw, wear and allowable duty cycle are not fixed."
        },
        {
          "id": "trotbot-pi-power",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "label": "5 V / 5 A Raspberry Pi supply domain",
          "nodeKind": "power",
          "configurationBoundary": "One 5 V / 5 A USB-C supply requirement for Raspberry Pi 5.",
          "sourceBomItemIds": [
            "trotbot-hardware-item-05"
          ],
          "identityBoundary": "Supply SKU, cable, USB-C negotiation, protection, grounding and measured voltage under compute load are not fixed."
        },
        {
          "id": "trotbot-servo-power",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "label": "Separate 6 V high-current servo domain",
          "nodeKind": "power",
          "configurationBoundary": "Responsibility-party 6 V servo rail, published as separate from Pi power with common ground.",
          "sourceBomItemIds": [
            "trotbot-hardware-item-06"
          ],
          "identityBoundary": "Orderable regulator/supply, 8–10 A peak claim provenance, fuse, emergency-stop implementation, wire gauge and measured transients are not frozen."
        }
      ],
      "interfaceRelations": [
        {
          "id": "trotbot-gamepad-pi5-bluetooth",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "fromNodeId": "trotbot-gamepad",
          "toNodeId": "trotbot-pi5",
          "relationType": "data-control",
          "interfaceLabel": "Bluetooth 5.0 gamepad link to Raspberry Pi 5",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceUrl": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "sourceBomItemIds": [
            "trotbot-hardware-item-01",
            "trotbot-hardware-item-07"
          ],
          "evidenceText": "The pinned README recommends Nintendo Pro Controller input and publishes Bluetooth wireless connection to Pi 5 while listing Xbox/PlayStation as alternatives.",
          "unresolved": [
            "Controller revision, pairing, radio identity, mapping, authentication, latency and packet-loss behavior are not frozen.",
            "RCI has not paired or captured this link."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "trotbot-pi5-pca9685-i2c",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "fromNodeId": "trotbot-pi5",
          "toNodeId": "trotbot-pca9685",
          "relationType": "data-control",
          "interfaceLabel": "I²C control at address 0x40",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceUrl": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "sourceBomItemIds": [
            "trotbot-hardware-item-01",
            "trotbot-hardware-item-03"
          ],
          "evidenceText": "The pinned hardware specification names PCA9685 as the Pi-controlled servo interface, publishes I²C address 0x40 and instructs detection on bus 1.",
          "unresolved": [
            "Board vendor, I²C pins/connector, pull-ups, bus speed, oscillator calibration, library checkout and observed address scan are not frozen.",
            "RCI has not run i2cdetect."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "trotbot-pca9685-servo-pwm",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "fromNodeId": "trotbot-pca9685",
          "toNodeId": "trotbot-servo-set",
          "relationType": "data-control",
          "interfaceLabel": "Twelve of sixteen PWM channels; source calls 250 Hz optimal",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceUrl": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "sourceBomItemIds": [
            "trotbot-hardware-item-03",
            "trotbot-hardware-item-04"
          ],
          "evidenceText": "The pinned README publishes twelve servos, sixteen PCA9685 channels with twelve used, 40–1000 Hz capability and 250 Hz as the project optimum.",
          "unresolved": [
            "Exact servo models, channel-to-joint map, pulse limits, calibration artifacts, observed frequency/jitter and electrical buffering are not frozen.",
            "RCI has not probed PWM or moved any joint."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "trotbot-pi-power-domain",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "fromNodeId": "trotbot-pi-power",
          "toNodeId": "trotbot-pi5",
          "relationType": "power",
          "interfaceLabel": "5 V / 5 A USB-C compute supply",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceUrl": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "sourceBomItemIds": [
            "trotbot-hardware-item-01",
            "trotbot-hardware-item-05"
          ],
          "evidenceText": "The responsibility-party BOM and hardware section publish a 5 V / 5 A USB-C supply for Raspberry Pi 5.",
          "unresolved": [
            "Supply SKU, cable, USB-C negotiation, ripple, transient margin, grounding and loaded voltage are not frozen.",
            "RCI has not instrumented this rail."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "trotbot-servo-power-domain",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "fromNodeId": "trotbot-servo-power",
          "toNodeId": "trotbot-servo-set",
          "relationType": "power",
          "interfaceLabel": "Separate 6 V high-current actuator supply",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceUrl": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "sourceBomItemIds": [
            "trotbot-hardware-item-04",
            "trotbot-hardware-item-06"
          ],
          "evidenceText": "The pinned source publishes 4.8–7.2 V servo operation, 6 V nominal, a separate high-current servo rail and common ground with Pi power.",
          "unresolved": [
            "Exact supply/regulator, claimed peak current basis, branch/fuse layout, emergency stop, wire gauge, connector map and measured transients are not frozen.",
            "RCI has not energized the rail."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "trotbot-servo-power-pca9685",
          "robotRecordId": "bom-audit-trotbot-hardware",
          "fromNodeId": "trotbot-servo-power",
          "toNodeId": "trotbot-pca9685",
          "relationType": "power",
          "interfaceLabel": "Separate servo-power input with common ground to Pi domain",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "mvipin/trotbot commit 4ac874ef86ed99e9621df685ba23103aeebc0d9c",
          "sourceUrl": "https://github.com/mvipin/trotbot/blob/4ac874ef86ed99e9621df685ba23103aeebc0d9c/README.md",
          "sourceBomItemIds": [
            "trotbot-hardware-item-03",
            "trotbot-hardware-item-06"
          ],
          "evidenceText": "The pinned PCA9685 section specifies 5 V logic and a separate servo-power input; the power section requires common ground between Pi and servo power.",
          "unresolved": [
            "Logic-rail source, board topology, ground conductor, isolation, back-feed behavior, fuse and measured ground offset are not frozen.",
            "RCI has not inspected or powered this board."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-stanford-pupper-v1",
      "platform": "Stanford Pupper v1 controller/hardware requirements",
      "responsibilityParty": "Stanford Robotics Club",
      "morphology": "quadruped",
      "platformRevisionBoundary": "StanfordQuadruped repository commit dc0c5e2089cf2c0aac3c59982a4f140c31803175; v1 repository is explicitly end-of-life.",
      "selectedBomSurface": "README and hardware configuration top-level dependency list",
      "bomFormat": "markdown-list",
      "declaredEntryCount": 8,
      "entryCountBoundary": "Eight RCI-normalized published hardware/control dependency records. This is not a flattened mechanical BOM.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "Immutable repository commit for the v1 project; not one physical unit.",
      "lifecycleBoundary": "The official README states Pupper v1 is no longer for sale and support ended, and points users to Pupper v3.",
      "strongestPublishedEvidence": "Pinned control stack, Raspberry Pi host, joystick interface, PWM path, IMU and configuration source files plus an explicit EOL boundary.",
      "largestRebuildGap": "No selected full mechanical/procurement BOM, unit serial manifest, receipts or current supported build path.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical conflict selected.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "partial",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "not-published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "published",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "An EOL historical evidence profile is not a recommendation to buy or rebuild v1.",
      "sources": [
        {
          "id": "pupper-v1-readme",
          "title": "Stanford Pupper v1 repository",
          "url": "https://github.com/stanfordroboticsclub/StanfordQuadruped/tree/dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "location": "EOL notice, architecture and hardware configuration sources",
          "revision": "Commit dc0c5e2"
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "stanford-pupper-v1",
      "href": "/robots/stanford-pupper-v1/",
      "morphologyLabel": "Quadruped",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 4,
      "disclosureCoveragePercent": 46,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "stanford-pupper-v1-item-01",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "Raspberry Pi host",
          "itemClass": "compute",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "Raspberry Pi",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One Raspberry Pi-based host is part of the published architecture; exact revision is not fixed in this profile.",
          "role": "On-robot control host",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-02",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "PWM servo actuator set",
          "itemClass": "actuation",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 12,
          "quantityState": "published-unit-count",
          "quantityBoundary": "The configuration source maps twelve servo channels; exact servo procurement identity remains outside this selected surface.",
          "role": "Quadruped joint actuation",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-03",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "IMU",
          "itemClass": "sensor",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One IMU path is present in the architecture; exact orderable identity is not promoted.",
          "role": "Body orientation sensing",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-04",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "PS4 controller",
          "itemClass": "control",
          "identityState": "variant-named",
          "manufacturer": null,
          "modelOrFile": "DualShock 4 / PS4 controller",
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One controller is used by the responsibility-party joystick path.",
          "role": "Wireless teleoperation input",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-05",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "Bluetooth interface",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "One Bluetooth path is required; adapter identity is not fixed.",
          "role": "Controller-host radio link",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-06",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "Servo power source",
          "itemClass": "power",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": 1,
          "quantityState": "published-unit-count",
          "quantityBoundary": "A power path is required without an orderable battery/supply identity in this selected surface.",
          "role": "Actuator energy supply",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-07",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "Printed/mechanical quadruped structure",
          "itemClass": "custom-mechanical",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "The selected repository does not expose a flattened mechanical BOM.",
          "role": "Robot frame and legs",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        },
        {
          "id": "stanford-pupper-v1-item-08",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceSection": "Repository architecture and hardware configuration requirements",
          "name": "pigpiod PWM interface",
          "itemClass": "control",
          "identityState": "generic-description",
          "manufacturer": null,
          "modelOrFile": null,
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "Software/firmware dependency, not a separately procured installed component.",
          "role": "Software-to-hardware PWM dependency",
          "procurementBoundary": "Responsibility-party requirement identity only; RCI omits volatile prices and retailer content and does not infer unlisted orderable attributes.",
          "includedInRobotBuild": true,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "No unit serial, receipt, lot or as-built inspection binds this row to one physical robot."
          ]
        }
      ],
      "normalizedBomItemCount": 8,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [
        {
          "id": "pupper-v1-eol-to-v3",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "relationType": "end-of-life-discontinuation",
          "from": "Stanford Pupper v1",
          "to": "Pupper v3 project",
          "effectiveBoundary": "The official v1 repository states v1 is no longer for sale or supported and points users to Pupper v3.",
          "systemImpact": "Historical v1 hardware/software evidence must not be treated as a currently supported procurement or build recommendation.",
          "evidenceState": "responsibility-party-published",
          "sourceId": "pupper-v1-readme",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "unresolved": "This record does not assert drop-in migration or enumerate a v1-to-v3 BOM delta."
        }
      ],
      "topologyNodes": [
        {
          "id": "pupper-v1-ps4-command-source",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "label": "PS4 controller and joystick publisher path",
          "nodeKind": "external-host",
          "configurationBoundary": "One responsibility-party-described PS4 controller read over Bluetooth by a separate joystick publisher that sends UDP commands.",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-04",
            "stanford-pupper-v1-item-05"
          ],
          "identityBoundary": "The selected evidence does not freeze controller hardware revision, Bluetooth adapter, publisher host, pairing state, joystick program revision or network identity."
        },
        {
          "id": "pupper-v1-raspberry-pi",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "label": "Raspberry Pi on-robot host",
          "nodeKind": "compute",
          "configurationBoundary": "One family-level Raspberry Pi host in the pinned Pupper v1 architecture.",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-01"
          ],
          "identityBoundary": "Exact Pi model, RAM, board revision, serial, storage image, operating system, network interface and physical GPIO condition are not fixed in the selected profile."
        },
        {
          "id": "pupper-v1-pigpiod-pwm",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "label": "pigpiod twelve-channel PWM hardware interface",
          "nodeKind": "control",
          "configurationBoundary": "Pinned Python hardware interface using pigpiod and a 3×4 GPIO pin matrix at 250 Hz.",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-08"
          ],
          "identityBoundary": "This is a software-to-GPIO control surface, not a separately purchased controller; pigpio version, daemon configuration, timing jitter and electrical buffering are not frozen."
        },
        {
          "id": "pupper-v1-servo-set",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "label": "Twelve generic PWM joint servos",
          "nodeKind": "actuation",
          "configurationBoundary": "Twelve servo channels arranged as three axes across four legs by the pinned configuration and hardware interface.",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-02"
          ],
          "identityBoundary": "Exact servo manufacturer, model, voltage, serials, calibration, horn geometry, current demand, wear and allowable duty cycle remain outside this selected evidence surface."
        },
        {
          "id": "pupper-v1-optional-imu",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "label": "Optional serial IMU path",
          "nodeKind": "control",
          "configurationBoundary": "The pinned run program defaults use_imu to false; when enabled it opens an IMU on /dev/ttyACM0 and reads quaternion data.",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-03"
          ],
          "identityBoundary": "Exact IMU, intermediary controller, USB identity, firmware, sensor calibration, mounting transform and whether the option was fitted on one unit are not published."
        }
      ],
      "interfaceRelations": [
        {
          "id": "pupper-v1-ps4-udp-command-path",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "fromNodeId": "pupper-v1-ps4-command-source",
          "toNodeId": "pupper-v1-raspberry-pi",
          "relationType": "data-control",
          "interfaceLabel": "Bluetooth PS4 input through separate joystick publisher to UDP ports 8830/8840",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceUrl": "https://github.com/stanfordroboticsclub/StanfordQuadruped/blob/dc0c5e2089cf2c0aac3c59982a4f140c31803175/src/JoystickInterface.py",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-01",
            "stanford-pupper-v1-item-04",
            "stanford-pupper-v1-item-05"
          ],
          "evidenceText": "The pinned README describes PS4-over-Bluetooth input and a separate UDP publisher; JoystickInterface fixes subscriber port 8830, publisher port 8840 and a nominal 50-message/s path.",
          "unresolved": [
            "Publisher host, Bluetooth adapter, pairing, IP addressing, transport authentication, packet-loss behavior, joystick script identity and exact controller revision are not frozen.",
            "RCI has not paired a controller or captured UDP traffic."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "pupper-v1-pi-pigpiod-role",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "fromNodeId": "pupper-v1-raspberry-pi",
          "toNodeId": "pupper-v1-pigpiod-pwm",
          "relationType": "software-role",
          "interfaceLabel": "Python hardware interface to local pigpiod PWM daemon",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceUrl": "https://github.com/stanfordroboticsclub/StanfordQuadruped/blob/dc0c5e2089cf2c0aac3c59982a4f140c31803175/pupper/HardwareInterface.py",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-01",
            "stanford-pupper-v1-item-08"
          ],
          "evidenceText": "The pinned HardwareInterface imports pigpio, opens pigpio.pi(), initializes the published PWM matrix and writes servo duty cycles.",
          "unresolved": [
            "pigpio version, daemon startup, socket locality, permissions, scheduling latency, GPIO electrical mode and fail-safe behavior are not frozen.",
            "RCI has not executed the daemon or measured PWM timing."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "pupper-v1-pigpiod-servo-pwm",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "fromNodeId": "pupper-v1-pigpiod-pwm",
          "toNodeId": "pupper-v1-servo-set",
          "relationType": "data-control",
          "interfaceLabel": "Twelve 250 Hz GPIO PWM channels on pins 2/14/18/23, 3/15/27/24 and 4/17/22/25",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceUrl": "https://github.com/stanfordroboticsclub/StanfordQuadruped/blob/dc0c5e2089cf2c0aac3c59982a4f140c31803175/pupper/Config.py",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-02",
            "stanford-pupper-v1-item-08"
          ],
          "evidenceText": "The pinned Pupper configuration publishes a 3×4 GPIO pin matrix, PWM range 4000 and frequency 250 Hz; HardwareInterface iterates four legs by three axes and writes each channel.",
          "unresolved": [
            "Servo signal voltage, buffering, connector map, cable identity, pulse calibration, channel-to-physical-joint verification and power-domain grounding are not independently fixed.",
            "RCI has not observed any PWM waveform or servo motion."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "pupper-v1-imu-pi-serial-optional",
          "robotRecordId": "bom-audit-stanford-pupper-v1",
          "fromNodeId": "pupper-v1-optional-imu",
          "toNodeId": "pupper-v1-raspberry-pi",
          "relationType": "data-control",
          "interfaceLabel": "Optional /dev/ttyACM0 serial quaternion path at 500000 baud",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "stanfordroboticsclub/StanfordQuadruped commit dc0c5e2089cf2c0aac3c59982a4f140c31803175",
          "sourceUrl": "https://github.com/stanfordroboticsclub/StanfordQuadruped/blob/dc0c5e2089cf2c0aac3c59982a4f140c31803175/run_robot.py",
          "sourceBomItemIds": [
            "stanford-pupper-v1-item-01",
            "stanford-pupper-v1-item-03"
          ],
          "evidenceText": "The pinned run program defaults use_imu=false; when enabled it constructs IMU(port=\"/dev/ttyACM0\"), while the pinned IMU reader defaults to 500000 baud and parses four-value quaternion rows.",
          "unresolved": [
            "The option is disabled by default; exact sensor and intermediary identity, USB descriptor, firmware, frame convention, calibration, mounting and sample timing are not fixed.",
            "RCI has not enabled or enumerated this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    },
    {
      "id": "bom-audit-par6-production",
      "platform": "PAR6 collaborative robot arm production surface",
      "responsibilityParty": "Source Robotics",
      "morphology": "desktop-arm",
      "platformRevisionBoundary": "PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7.",
      "selectedBomSurface": "Selected print plates, drawings, datasheets and machine-readable robot-description files",
      "bomFormat": "repository-file-tree",
      "declaredEntryCount": 44,
      "entryCountBoundary": "44 distinct responsibility-party file paths in the selected immutable source boundary. A file path is an engineering evidence record, not an installed quantity or a unique procured component.",
      "commitAddressableBom": true,
      "nativeTabularBom": false,
      "versionState": "The selected engineering surface is immutable at the cited commit or release asset. It is not a serial-numbered as-built robot manifest.",
      "lifecycleBoundary": "Legacy-labelled shaft-coupler material remains explicitly legacy; print-bed and colour variants are alternatives rather than simultaneously installed sets.",
      "strongestPublishedEvidence": "Commit-addressable print plates, mechanical drawings, wiring/gearbox documents and robot-description tables.",
      "largestRebuildGap": "The selected file inventory does not parse the BOM workbook, select print alternatives or establish a completed arm/control-box build.",
      "responsibilitySourceConflict": false,
      "conflictNote": "No numerical responsibility-source conflict was selected. File presence does not prove manufacture, assembly, fit, performance or current procurement availability.",
      "disclosures": {
        "exactPlatformRevision": "published",
        "versionedBomSnapshot": "partial",
        "lineItemQuantities": "not-published",
        "manufacturerPartNumbers": "partial",
        "supplierLinks": "not-published",
        "customPartFiles": "published",
        "electricalInterconnectDefinition": "partial",
        "softwareFirmwareBinding": "partial",
        "licenseBoundary": "published",
        "changeEolSubstitutionHistory": "partial",
        "asBuiltManifest": "not-published",
        "independentRebuildEvidence": "not-published"
      },
      "completeRebuildEvidencePackage": false,
      "editorialBoundary": "RCI normalizes only responsibility-party file identity, revision, engineering role and unresolved boundaries. The record is not a procurement BOM, unit manifest, successful rebuild, compatibility proof, endorsement or RCI hardware test.",
      "sources": [
        {
          "id": "par6-production-tree",
          "title": "PAR6 Collaborative Robot Arm repository",
          "url": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/tree/ee7637cfaa981438a667be6cf3722312898801c7",
          "location": "44 selected production/support files with engineering extensions",
          "revision": "PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7."
        }
      ],
      "verifiedDate": "2026-08-13",
      "slug": "par6-production-surface",
      "href": "/robots/par6-production-surface/",
      "morphologyLabel": "Desktop arm",
      "publishedDisclosureCount": 3,
      "partialDisclosureCount": 5,
      "openDisclosureCount": 4,
      "disclosureCoveragePercent": 46,
      "sourceCount": 1,
      "profileStage": "public-bom-audited",
      "normalizedBomItems": [
        {
          "id": "par6-production-file-001",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/All parts",
          "name": "250x210mm - All plates.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/All parts/250x210mm - All plates.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-002",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Multi color",
          "name": "Plate 1.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Multi color/Plate 1.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-003",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Multi color",
          "name": "Plate 2.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Multi color/Plate 2.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-004",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Multi color",
          "name": "Plate 3.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Multi color/Plate 3.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-005",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Multi color",
          "name": "Plate 4.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Multi color/Plate 4.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-006",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Multi color",
          "name": "Plate 5.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Multi color/Plate 5.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-007",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Multi color",
          "name": "Plate 6.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Multi color/Plate 6.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-008",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Single color",
          "name": "Plate 1.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Single color/Plate 1.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-009",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Single color",
          "name": "Plate 2.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Single color/Plate 2.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-010",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Single color",
          "name": "Plate 3.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Single color/Plate 3.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-011",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Single color",
          "name": "Plate 4.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Single color/Plate 4.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-012",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Single color",
          "name": "Plate 5.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Single color/Plate 5.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-013",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x210mm/Single color",
          "name": "Plate 6.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x210mm/Single color/Plate 6.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-014",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/All parts",
          "name": "250x250mm - All plates.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/All parts/250x250mm - All plates.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-015",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Multi color",
          "name": "Plate 1.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Multi color/Plate 1.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-016",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Multi color",
          "name": "Plate 2.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Multi color/Plate 2.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-017",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Multi color",
          "name": "Plate 3.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Multi color/Plate 3.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-018",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Multi color",
          "name": "Plate 4.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Multi color/Plate 4.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-019",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Multi color",
          "name": "Plate 5.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Multi color/Plate 5.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-020",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Single color",
          "name": "Plate 1.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Single color/Plate 1.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-021",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Single color",
          "name": "Plate 2.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Single color/Plate 2.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-022",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Single color",
          "name": "Plate 3.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Single color/Plate 3.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-023",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Single color",
          "name": "Plate 4.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Single color/Plate 4.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-024",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/3MF/250x250mm/Single color",
          "name": "Plate 5.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/3MF/250x250mm/Single color/Plate 5.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-025",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files",
          "name": "PAR6 Print Table.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/PAR6 Print Table.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-026",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/STL/Miscellaneous/CNC_metal_plates",
          "name": "big_base.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/STL/Miscellaneous/CNC_metal_plates/big_base.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-027",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/STL/Miscellaneous/CNC_metal_plates",
          "name": "small_base.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/STL/Miscellaneous/CNC_metal_plates/small_base.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-028",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/STL/Multicolor prints/J5_LID",
          "name": "J5_belt_lid_multicolor.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/STL/Multicolor prints/J5_LID/J5_belt_lid_multicolor.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-029",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/STL/Multicolor prints/J5_LID",
          "name": "J5_belt_lid_multicolor.gcode.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/STL/Multicolor prints/J5_LID/J5_belt_lid_multicolor.gcode.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-030",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/STL/Multicolor prints/Upper_arm_cover",
          "name": "Upper_arm_cover_LOGO_latest.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/STL/Multicolor prints/Upper_arm_cover/Upper_arm_cover_LOGO_latest.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-031",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "3D Print Files/STL/Multicolor prints/Upper_arm_cover",
          "name": "Upper_arm_cover_LOGO_latest_3mf.3mf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "3D Print Files/STL/Multicolor prints/Upper_arm_cover/Upper_arm_cover_LOGO_latest_3mf.3mf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-032",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams",
          "name": "CAN wires.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/CAN wires.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-033",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets",
          "name": "FLE42-L1SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets/FLE42-L1SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-034",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets",
          "name": "FLE42-L2SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets/FLE42-L2SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-035",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets",
          "name": "HPR42-L1SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets/HPR42-L1SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-036",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets",
          "name": "HPR42-L2SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets/HPR42-L2SW（∅5-22-31-∅3.5-标准轴）.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-037",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets",
          "name": "精密减速机选型手册-2024 for cusomers.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/Gearbox_datasheets/精密减速机选型手册-2024 for cusomers.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-038",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams",
          "name": "Power(24V) wires.pdf",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/Power(24V) wires.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Assembly-level engineering definition",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-039",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "Assembly manual/Datasheets_&_Diagrams",
          "name": "shaft coupler JLCPCB (legacy).pdf",
          "itemClass": "control",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "Assembly manual/Datasheets_&_Diagrams/shaft coupler JLCPCB (legacy).pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Electrical design or fabrication evidence",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-040",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "BOM/Custom & machined parts/8mm_shaft_coupler_Keyway",
          "name": "8mm_shaft_coupler_Keyway.pdf",
          "itemClass": "subassembly",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "BOM/Custom & machined parts/8mm_shaft_coupler_Keyway/8mm_shaft_coupler_Keyway.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-041",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "PAR6 Description/URDF/par6_flange/urdf",
          "name": "par6_flange.csv",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PAR6 Description/URDF/par6_flange/urdf/par6_flange.csv",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-042",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "PAR6 Description/URDF/par6_msg_gripper/urdf",
          "name": "PAR6_MSG.csv",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PAR6 Description/URDF/par6_msg_gripper/urdf/PAR6_MSG.csv",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-043",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "PAR6 Description/URDF/par6_ssg48_gripper/urdf",
          "name": "par6_ssg48_urdf.csv",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PAR6 Description/URDF/par6_ssg48_gripper/urdf/par6_ssg48_urdf.csv",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Custom-part geometry or production asset",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        },
        {
          "id": "par6-production-file-044",
          "robotRecordId": "bom-audit-par6-production",
          "sourceId": "par6-production-tree",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceSection": "PAR6 Description",
          "name": "URDF_INERTIAL.pdf",
          "itemClass": "custom-mechanical",
          "identityState": "file-identified",
          "manufacturer": null,
          "modelOrFile": "PAR6 Description/URDF_INERTIAL.pdf",
          "variant": null,
          "quantity": null,
          "quantityState": "not-published",
          "quantityBoundary": "One distinct file path is present in the selected immutable evidence surface; the path does not publish an installed or procurement quantity.",
          "role": "Production drawing or supporting engineering document",
          "procurementBoundary": "Engineering-file identity only. Material, process, tolerance, revision acceptance and manufactured-unit quantity must be resolved separately.",
          "includedInRobotBuild": false,
          "evidenceState": "responsibility-party-published",
          "unresolved": [
            "File presence does not prove that this revision was manufactured or installed on one physical robot.",
            "No unit-level as-built manifest binds this file to a serialised system."
          ]
        }
      ],
      "normalizedBomItemCount": 44,
      "manufacturerRelations": [],
      "componentRelations": [],
      "lifecycleRelations": [],
      "topologyNodes": [
        {
          "id": "par6-external-rcb",
          "robotRecordId": "bom-audit-par6-production",
          "label": "Required external RCB Robot Control Box",
          "nodeKind": "external-host",
          "configurationBoundary": "The pinned PAR6 README and BOM require a separately built RCB control box.",
          "sourceBomItemIds": [],
          "identityBoundary": "The RCB lives in a separate moving repository and is not bound to the pinned PAR6 commit; beta boards disclose trace cuts, jumpers and E-stop connector corrections."
        },
        {
          "id": "par6-gx16-robot-cable",
          "robotRecordId": "bom-audit-par6-production",
          "label": "Four-core GX16 robot-to-RCB cable",
          "nodeKind": "assembly",
          "configurationBoundary": "Responsibility-party four-core 22/24 AWG shielded cable with pins 1/4 paired for power and 2/3 paired for CAN.",
          "sourceBomItemIds": [
            "par6-production-file-032",
            "par6-production-file-038"
          ],
          "identityBoundary": "Cable lot, shield termination, length, twist, conductor resistance, insulation, connector keying and continuity are not bound to one build."
        },
        {
          "id": "par6-base-distribution-pcb",
          "robotRecordId": "bom-audit-par6-production",
          "label": "PAR6 base distribution PCB",
          "nodeKind": "control",
          "configurationBoundary": "One responsibility-party BOM row and the published cable-building endpoints at the robot base.",
          "sourceBomItemIds": [
            "par6-production-file-032",
            "par6-production-file-038"
          ],
          "identityBoundary": "PCB revision, fabrication files, population, connector assignment, protection, serial and measured distribution behavior are not frozen in this selected profile."
        },
        {
          "id": "par6-six-stepfoc-drivers",
          "robotRecordId": "bom-audit-par6-production",
          "label": "Six STEPFOC closed-loop stepper drivers",
          "nodeKind": "control",
          "configurationBoundary": "Six drivers in the pinned PAR6 BOM, one per J1–J6 motor path.",
          "sourceBomItemIds": [
            "par6-production-file-032",
            "par6-production-file-038"
          ],
          "identityBoundary": "Driver hardware revision, serials, firmware, CAN IDs, calibration presets, trace modifications and per-joint assignment are not frozen for one arm."
        },
        {
          "id": "par6-six-nema17-motors",
          "robotRecordId": "bom-audit-par6-production",
          "label": "Six version-bounded NEMA 17 joint motors",
          "nodeKind": "actuation",
          "configurationBoundary": "Pinned BOM: one 17HS08-1004S at J6, two 17HS16-2004S1 at J4/J5 and three 17HS24-2104S at J1/J2/J3.",
          "sourceBomItemIds": [],
          "identityBoundary": "Published model allocation does not establish serials, driver pairing, encoder-magnet installation, thermistor bonding, calibration, wear or measured output."
        }
      ],
      "interfaceRelations": [
        {
          "id": "par6-rcb-gx16-can",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-external-rcb",
          "toNodeId": "par6-gx16-robot-cable",
          "relationType": "data-control",
          "interfaceLabel": "CAN pair on GX16 pins 2 and 3",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/Assembly%20manual/Building_cables.md",
          "sourceBomItemIds": [
            "par6-production-file-032"
          ],
          "evidenceText": "The pinned cable guide requires pins 2/3 to be one twisted pair and explicitly assigns CAN wires to those pins at both the robot and RCB ends.",
          "unresolved": [
            "The separate RCB repository revision, CAN transceiver, bitrate, termination, node IDs, firmware and physical continuity are not frozen.",
            "Beta RCB boards disclose manual trace/jumper modifications; RCI has not inspected one."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "par6-rcb-gx16-power",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-external-rcb",
          "toNodeId": "par6-gx16-robot-cable",
          "relationType": "power",
          "interfaceLabel": "Power pair on GX16 pins 1 and 4",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/Assembly%20manual/Building_cables.md",
          "sourceBomItemIds": [
            "par6-production-file-038"
          ],
          "evidenceText": "The pinned guide requires pins 1/4 to form one twisted pair and explicitly assigns robot power to those pins at both connector ends.",
          "unresolved": [
            "The selected PAR6 source does not freeze RCB supply revision, voltage tolerance, current limit, E-stop/relay state, polarity, fuse or measured output.",
            "Beta RCB documentation reports an inverted relay default and swapped E-stop connections; RCI has not energized this path."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "par6-gx16-base-distribution-can",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-gx16-robot-cable",
          "toNodeId": "par6-base-distribution-pcb",
          "relationType": "data-control",
          "interfaceLabel": "Robot-base CAN pair into the distribution endpoint",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/Assembly%20manual/Building_cables.md",
          "sourceBomItemIds": [
            "par6-production-file-032"
          ],
          "evidenceText": "The cable guide places CAN and power on the four-pin robot-base link; the BOM and cable sections route motor-driver CAN wiring back to the Base Distribution PCB.",
          "unresolved": [
            "PCB connector numbering, copper topology, termination, shielding, branch lengths and continuity are not published in the selected profile.",
            "RCI has not inspected the distribution board."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "par6-gx16-base-distribution-power",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-gx16-robot-cable",
          "toNodeId": "par6-base-distribution-pcb",
          "relationType": "power",
          "interfaceLabel": "Robot-base power pair into distribution PCB",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/Assembly%20manual/Building_cables.md",
          "sourceBomItemIds": [
            "par6-production-file-038"
          ],
          "evidenceText": "The responsibility-party cable guide carries the power pair through the GX16 robot cable and routes motor power wiring to the Base Distribution PCB.",
          "unresolved": [
            "Nominal 24 V is present in the selected wire-drawing filename and project materials, but the cable guide does not freeze tolerance, protection, polarity at the PCB, conductor heating or loaded drop.",
            "RCI has not applied power."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "par6-base-stepfoc-can",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-base-distribution-pcb",
          "toNodeId": "par6-six-stepfoc-drivers",
          "relationType": "data-control",
          "interfaceLabel": "JST ZH 1.5 mm two-wire CAN distribution to six motor drivers",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/Assembly%20manual/Building_cables.md",
          "sourceBomItemIds": [
            "par6-production-file-032"
          ],
          "evidenceText": "The pinned guide defines JST ZH 1.5 mm / 28 AWG as CAN between motor drivers and identifies direct/extension paths from J1–J6 back to the Base Distribution PCB.",
          "unresolved": [
            "Exact daisy-chain/branch order, CAN IDs, termination, connector orientation, firmware and per-joint continuity are not frozen.",
            "Wrong cable orientation is explicitly warned as destructive; RCI has not continuity-tested the harness."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "par6-base-stepfoc-power",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-base-distribution-pcb",
          "toNodeId": "par6-six-stepfoc-drivers",
          "relationType": "power",
          "interfaceLabel": "JST XH 2.54 mm 22/24 AWG power distribution to six drivers",
          "directionality": "source-to-target",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/Assembly%20manual/Building_cables.md",
          "sourceBomItemIds": [
            "par6-production-file-038"
          ],
          "evidenceText": "The responsibility-party guide defines JST XH as motor-driver power, specifies 24/22 AWG and routes J1–J6 power paths to the Base Distribution PCB.",
          "unresolved": [
            "Connector polarity, branch topology, current allocation, fuse/relay state, wire heating, voltage drop and physical continuity are not frozen.",
            "RCI has not powered a driver."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        },
        {
          "id": "par6-stepfoc-six-motors",
          "robotRecordId": "bom-audit-par6-production",
          "fromNodeId": "par6-six-stepfoc-drivers",
          "toNodeId": "par6-six-nema17-motors",
          "relationType": "data-control",
          "interfaceLabel": "One STEPFOC closed-loop driver per J1–J6 NEMA 17 motor",
          "directionality": "bidirectional",
          "evidenceState": "responsibility-party-explicit-not-physically-verified",
          "sourceRevision": "Source-Robotics/PAR6-Collaborative-Robot-Arm commit ee7637cfaa981438a667be6cf3722312898801c7",
          "sourceUrl": "https://github.com/Source-Robotics/PAR6-Collaborative-Robot-Arm/blob/ee7637cfaa981438a667be6cf3722312898801c7/BOM/BOM.md",
          "sourceBomItemIds": [],
          "evidenceText": "The pinned BOM publishes six STEPFOC drivers and six specifically allocated motors: J1–J3 17HS24-2104S, J4/J5 17HS16-2004S1 and J6 17HS08-1004S.",
          "unresolved": [
            "Driver-to-motor serial pairing, phase wiring, encoder magnet alignment, thermistor bonding, firmware, calibration preset and closed-loop performance are not frozen.",
            "The beta guide requires per-motor firmware update, preset, calibration and save, but RCI has not performed them."
          ],
          "physicalValidationState": "none",
          "verifiedDate": "2026-08-13"
        }
      ]
    }
  ]
}