Skip to content

Commit f362064

Browse files
committed
chore: Revert unnecessary change to Clean Summary Trait
1 parent b07b2a3 commit f362064

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

roborock/devices/traits/v1/clean_summary.py

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,16 +60,18 @@ def _parse_clean_record_response(cls, response: common.V1ResponseData) -> CleanR
6060
if isinstance(response[-1], dict):
6161
records = [CleanRecord.from_dict(rec) for rec in response]
6262
final_record = records[-1]
63-
# Aggregate basic stats from prior partial records (exclude last which is full)
64-
final_record.begin = records[0].begin
65-
final_record.start_type = records[0].start_type
66-
for rec in records[0:-1]:
67-
final_record.duration = (final_record.duration or 0) + (rec.duration or 0)
68-
final_record.area = (final_record.area or 0) + (rec.area or 0)
69-
final_record.avoid_count = (final_record.avoid_count or 0) + (rec.avoid_count or 0)
70-
final_record.wash_count = (final_record.wash_count or 0) + (rec.wash_count or 0)
71-
return final_record
72-
# There are still a few unknown variables in this.
63+
try:
64+
# This code is semi-presumptuous - so it is put in a try finally to be safe.
65+
final_record.begin = records[0].begin
66+
final_record.start_type = records[0].start_type
67+
for rec in records[0:-1]:
68+
final_record.duration = (final_record.duration or 0) + (rec.duration or 0)
69+
final_record.area = (final_record.area or 0) + (rec.area or 0)
70+
final_record.avoid_count = (final_record.avoid_count or 0) + (rec.avoid_count or 0)
71+
final_record.wash_count = (final_record.wash_count or 0) + (rec.wash_count or 0)
72+
except Exception:
73+
# Return final record when an exception occurred
74+
return final_record # There are still a few unknown variables in this.
7375
begin, end, duration, area = unpack_list(response, 4)
7476
return CleanRecord(begin=begin, end=end, duration=duration, area=area)
7577
raise ValueError(f"Unexpected clean record format: {response!r}")

0 commit comments

Comments
 (0)