Decompose: Add Brother Entrepreneur PR-10 (10-needle) machine profile — Phase 3: Round-trip integration test #56

Closed
opened 2026-06-22 16:31:24 +00:00 by Mark · 1 comment
Owner

Phase 3: Round-trip integration test

End-to-end test that the PR-10 profile actually constrains the
pipeline correctly. A design that exceeds the hoop should be flagged
or scaled, not silently produced.

Files:

  • New: tests/test_pr10_constraints.py
  • New: data/test_fixtures/oversized.svg (a design larger than the
    PR-10 hoop)

Acceptance:

  • A 250×250 mm input with the PR-10 profile (100×100 mm hoop default)
    produces a result that fits within the hoop (scaled or rejected
    with a clear error).
  • A 50×50 mm input produces a result that respects the max thread
    count of 10 (no more than 10 distinct colors in the output, even if
    the input has 50).
  • A 50×50 mm input with 5 colors produces a result that emits a
    valid PES file for the PR-10 (correct PES version magic bytes).

Depends on: P1, P2.

Out of scope

  • Other Brother models (SE600, PE535, QS-1000 already exist).
  • Adding PR-10 variants (e.g. PR-10e, PR-10 Limited Edition). If real,
    separate tickets.
  • Changes to the pipeline's actual constraint enforcement logic — this
    ticket is about adding the profile, not about making the pipeline
    respect constraints it currently ignores.

Decomposed from easystitch#36

## Phase 3: Round-trip integration test End-to-end test that the PR-10 profile actually constrains the pipeline correctly. A design that exceeds the hoop should be flagged or scaled, not silently produced. **Files:** - New: `tests/test_pr10_constraints.py` - New: `data/test_fixtures/oversized.svg` (a design larger than the PR-10 hoop) **Acceptance:** - A 250×250 mm input with the PR-10 profile (100×100 mm hoop default) produces a result that fits within the hoop (scaled or rejected with a clear error). - A 50×50 mm input produces a result that respects the max thread count of 10 (no more than 10 distinct colors in the output, even if the input has 50). - A 50×50 mm input with 5 colors produces a result that emits a valid PES file for the PR-10 (correct PES version magic bytes). **Depends on:** P1, P2. ## Out of scope - Other Brother models (SE600, PE535, QS-1000 already exist). - Adding PR-10 variants (e.g. PR-10e, PR-10 Limited Edition). If real, separate tickets. - Changes to the pipeline's actual constraint enforcement logic — this ticket is about adding the profile, not about making the pipeline respect constraints it currently ignores. --- _Decomposed from [easystitch#36](https://forgejo.tail018ac4.ts.net/Mark/easystitch/issues/36)_
Author
Owner

Cross-link: ThreadCraft #11 — PR-10 constraint test verifies the integration end-to-end.

**Cross-link:** ThreadCraft #11 — PR-10 constraint test verifies the integration end-to-end.
Mark closed this issue 2026-06-23 06:22:36 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Mark/easystitch#56
No description provided.