diff --git a/crates/colibri-contracts/tests/golden.rs b/crates/colibri-contracts/tests/golden.rs index e8526a3..919dd79 100644 --- a/crates/colibri-contracts/tests/golden.rs +++ b/crates/colibri-contracts/tests/golden.rs @@ -21,6 +21,8 @@ const OSA_WATCHDOG_STATUS: &str = const OSA_WATCHDOG_RUN: &str = include_str!("../../../manifests/2026-05-26-osa-watchdog-host-status-run-manifest.json"); const DEBBY_INV: &str = include_str!("../../../manifests/2026-05-26-debby-runtime-inventory.json"); +const USB_INV: &str = + include_str!("../../../manifests/2026-06-04-usb-runtime-inventory.json"); fn roundtrip_eq(value: &T) where @@ -51,6 +53,17 @@ fn parses_debby_inventory() { roundtrip_eq(&inv); } +#[test] +fn parses_usb_inventory() { + let inv: RuntimeInventory = serde_json::from_str(USB_INV).expect("parse usb inventory"); + assert_eq!(inv.schema, RUNTIME_INVENTORY_SCHEMA); + assert_eq!(inv.host, "usb.clawdie.home.arpa"); + assert_eq!(inv.os, "15.0-RELEASE"); + assert_eq!(inv.node.as_deref(), Some("v24.14.1")); + assert_eq!(inv.pi.as_deref(), Some("0.78.0")); + roundtrip_eq(&inv); +} + #[test] fn parses_domedog_inventory() { let inv: RuntimeInventory = serde_json::from_str(DOMEDOG_INV).expect("parse domedog inventory"); diff --git a/manifests/2026-06-04-usb-runtime-inventory.json b/manifests/2026-06-04-usb-runtime-inventory.json new file mode 100644 index 0000000..4d26755 --- /dev/null +++ b/manifests/2026-06-04-usb-runtime-inventory.json @@ -0,0 +1,13 @@ +{ + "schema": "clawdie.runtime-version-inventory.v1", + "host": "usb.clawdie.home.arpa", + "os": "15.0-RELEASE", + "node": "v24.14.1", + "pi": "0.78.0", + "package_manager": "pkg", + "iso_npm_globals_pin": {}, + "notes": [ + "live USB operator workstation", + "colibri-daemon v0.0.1 active" + ] +}