Mate-level ground truth labels #15

Closed
opened 2026-02-03 16:09:53 +00:00 by forbes · 0 comments
Owner

Phase 1.5

Depends on #13, #14

Files: solver/mates/labeling.py (Create), tests/mates/test_labeling.py (Create)

Scope: MateLabel dataclass (mate_id, is_independent, is_redundant, is_degenerate, pattern, issue). MateAssemblyLabels (per_mate, patterns, assembly, analysis). label_mate_assembly() back-attributes joint-level independence to originating mates via mate_to_joint mapping. Mate is redundant if ALL contributed joints are redundant. Mate is degenerate if any contributed joint is geometrically dependent.

Acceptance Criteria:

  • MateLabel back-attributes joint results to mates
  • Redundant/degenerate mates detected
  • Pattern membership tracked
  • to_dict() JSON-serializable
  • Tests, ruff, mypy all pass
## Phase 1.5 Depends on #13, #14 **Files:** solver/mates/labeling.py (Create), tests/mates/test_labeling.py (Create) **Scope:** MateLabel dataclass (mate_id, is_independent, is_redundant, is_degenerate, pattern, issue). MateAssemblyLabels (per_mate, patterns, assembly, analysis). label_mate_assembly() back-attributes joint-level independence to originating mates via mate_to_joint mapping. Mate is redundant if ALL contributed joints are redundant. Mate is degenerate if any contributed joint is geometrically dependent. **Acceptance Criteria:** - [ ] MateLabel back-attributes joint results to mates - [ ] Redundant/degenerate mates detected - [ ] Pattern membership tracked - [ ] to_dict() JSON-serializable - [ ] Tests, ruff, mypy all pass
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kindred/solver#15