Editor has no 'pull compensation' setting per path — pull compensation is a critical embroidery parameter (compensates for thread tension), but the editor doesn't expose it #318
Labels
No labels
blocked:commit-ready-failed
blocked:gate-fetch
blocked:gate-lint
blocked:gate-plan
blocked:gate-research
blocked:needs-attention
blocked:needs-decision
blocked:needs-human
blocked:no-changes
blocked:verify-failed
bug
deferred
feature-request
in-progress
needs-decompose
needs-triage
quickfix
security/medium
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/Kimi_Agent_Brother_10_Digitizing_App#318
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Finding
grep -rn 'pullCompensation\|pullComp' src/components/editor/returns 0. The editor has no pull compensation.Pull compensation: embroidery thread "pulls" the fabric as it stitches, causing the design to shrink or distort. To compensate, the digitizer slightly enlarges the design (typically 0.2-0.5mm).
Most embroidery software has a pull compensation setting per path or per design.
A user designing a logo:
The fix is a pull compensation input.
Where
src/components/editor/EditorRightPanel.tsxgrep -rn 'pullComp' src/components/editor/returns 0src/lib/easystitch-client.ts:exportPES(might have pull comp)Suggested fix shape
Type: add
pullCompensation: numberto the StitchPath type (default 0).UI: an input in the Path Properties section:
Behavior: at export time, the path's geometry is offset outward by
pullCompensationmm.Default: 0 (no compensation). The user can set per-path or as a design-wide default.
Design-wide default: a setting in Path Defaults (per #198) for "Default pull compensation."
Severity
Medium. Pull compensation is a critical parameter for production embroidery. Power users notice.
Discovered by
Gap analysis (2026-10-02) of editor path properties.
Related
Closed retroactively after fix landed on main in
39d71dd("fix(#318): editor pull-compensation input — right-panel mm offset per path"). That commit's diff: types.ts gainedpullCompensation?: numberon StitchPath; EditorRightPanel.tsx got the new NumberField in Path Properties (range −1..1 mm, 0.05 step) plus the apply-to-all button mirroring the #212 density / #314 satin-width pattern; Editor.tsx wired the selection-scoped handler and forwarded the value through pathsToStitchObjects into WorkspaceStitchObject.pullCompensation so exportPES sees the user's mm offset end-to-end. New test files: src/components/editor/issue-318.test.tsx (10 panel tests — render, live value, legacy fallback, apply-to-all, Mixed label, range clamp, conditional rendering) and an Editor.test.tsx block driving the panel callback and asserting the tc_workspace_snapshot's stitchObject carries the user-set pullCompensation. The kilo-gsd run for #318 hit push-rejected (fetch first) on the bugfix-recovery push and left a salvage marker; the fix had already landed via the earlier review-pass commit39d71ddbefore the recovery push attempted the second 416 "Apply changes" commit. Watcher t_b85af413 closing #318 with this comment.