Skip to content

fix: preserve immutable Q10 points in model conformance checks - #965

Merged
allenporter merged 1 commit into
Python-roborock:mainfrom
hCoureau:fix/q10-point-conformance
Sep 17, 2026
Merged

allenporter merged 1 commit into
Python-roborock:mainfrom
hCoureau:fix/q10-point-conformance

Conversation

@hCoureau

Copy link
Copy Markdown
Contributor

The model conformance check fails on main for the existing frozen Q10RoborockPoint. A frozen dataclass cannot inherit from the non-frozen RoborockBase, so enforcing that inheritance would require changing the coordinate value's public behavior.

Document and check an explicit exception for this one existing type. All other domain models retain the inheritance requirement. Add regression tests for rejected coordinate assignment/deletion, equality, and stable hashing; production code is unchanged.

Fixes #964.

Validation: reproduced the failure on untouched eac001c (1 failed, 83 passed); with this change, the full suite reports 1320 passed, 53 existing xfailed, with 92 snapshots passed. All pre-commit checks and wheel/sdist builds pass.

@allenporter allenporter left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the fix.

@allenporter
allenporter merged commit 386e4c5 into Python-roborock:main Sep 17, 2026
7 checks passed
@hCoureau
hCoureau deleted the fix/q10-point-conformance branch September 18, 2026 07:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Model conformance test fails on existing frozen Q10RoborockPoint

2 participants