Trim manual_confirm outputs and fix resource uuid lookup

- neware manual_confirm: drop formulations/assembly_data from result and output handles (they only feed internal CSV export and should not be passed downstream); return dict no longer carries those two keys
- base_device_node.loop_find_with_uuid consumer: iterate all figured_resources instead of breaking after first attempt; raise explicit error when uuid cannot be resolved

Made-with: Cursor
This commit is contained in:
Xie Qiming
2026-04-22 11:18:45 +08:00
parent d1713fcca1
commit 3af86a07f2
3 changed files with 8 additions and 17 deletions

View File

@@ -2019,8 +2019,6 @@ class NewareBatteryTestSystem:
"active_material": active_material,
"capacity": capacity,
"battery_system": battery_system,
"formulations": formulations,
"assembly_data": assembly_data,
"pole_weight": pole_weight,
}

View File

@@ -378,8 +378,6 @@ neware_battery_test_system:
active_material: active_material
capacity: capacity
battery_system: battery_system
formulations: formulations
assembly_data: assembly_data
pole_weight: pole_weight
schema:
title: manual_confirm参数
@@ -677,16 +675,6 @@ neware_battery_test_system:
label: 极片质量
data_key: pole_weight
data_source: executor
- handler_key: formulations
data_type: array
label: 配方信息列表
data_key: formulations
data_source: executor
- handler_key: assembly_data
data_type: array
label: 扣电组装数据列表
data_key: assembly_data
data_source: executor
placeholder_keys:
resource: unilabos_resources
target_device: unilabos_devices

View File

@@ -1971,10 +1971,15 @@ class BaseROS2DeviceNode(Node, Generic[T]):
mapped_plr_resources = []
for uuid in uuids_list:
found = None
for plr_resource in figured_resources:
r = self.resource_tracker.loop_find_with_uuid(plr_resource, uuid)
mapped_plr_resources.append(r)
break
if r is not None:
found = r
break
if found is None:
raise Exception(f"未能在已解析的资源树中找到 uuid={uuid} 对应的资源")
mapped_plr_resources.append(found)
return mapped_plr_resources
@@ -2335,4 +2340,4 @@ class DeviceInfoType(TypedDict):
status_publishers: Dict[str, PropertyPublisher]
actions: Dict[str, ActionServer]
hardware_interface: Dict[str, Any]
base_node_instance: BaseROS2DeviceNode
base_node_instance: BaseROS2DeviceNode