RightPanel exposes 3 of 8 digitize service parameters (stitchPreference, minStitchLength, maxColors) — fillDensityMm, satinStitchSpacingMm, runningStitchSpacingMm, maxStitchLengthMm have no UI control #137

Closed
opened 2026-10-03 04:03:07 +00:00 by Mark · 1 comment
Owner

Finding

The service's AutoDigitizeSettings exposes 8 numeric parameters that control how the digitize engine generates stitches:

  • fillDensityMm (default 0.4)
  • satinStitchSpacingMm (default 0.4)
  • runningStitchSpacingMm (default 0.4)
  • minStitchLengthMm (default 1.0)
  • maxStitchLengthMm (default 8.0)
  • maxColors (default 10)
  • hoopSizeMm (covered by the Hoop Size dropdown)
  • stitchPreference (covered by Balanced/Quality/Speed buttons)

The RightPanel's Auto-Digitize Settings section exposes 3 of these: stitchPreference, minStitchLength, and colorSensitivity (which maps to maxColors). The other 5 (fillDensityMm, satinStitchSpacingMm, runningStitchSpacingMm, maxStitchLengthMm, and the literal maxColors) have no UI control.

A power user who wants tighter satin stitches, looser fill, or longer jump-stitch suppression has no way to set those. They go to the service's defaults every time.

Where

  • Service schema: POST /v1/digitize settings JSON (verified at runtime via /openapi.json)
  • Client state: src/components/workspace/RightPanel.tsx renders only 3 of the 8 fields
  • Client adapter: src/lib/digitize-adapters.ts:55 passes the 3 known fields plus 2 others (hoopSizeMm and machineProfile) to the service

Suggested fix shape

Extend the RightPanel's Auto-Digitize Settings to expose all 8 fields:

  • Fill Density — numeric input, mm, default 0.4, range 0.1-2.0, step 0.05
  • Satin Stitch Spacing — numeric input, mm, default 0.4, range 0.1-2.0
  • Running Stitch Spacing — numeric input, mm, default 0.4, range 0.1-5.0
  • Max Stitch Length — numeric input, mm, default 8.0, range 1.0-20.0
  • (existing) Min Stitch Length — already exposed
  • (existing) Max Colors — already exposed as Color Sensitivity slider

Each field stores in the workspace reducer via SET_AUTO_DIGITIZE_SETTING and gets sent in the digitize request payload via toServiceSettings.

The two undocumented forward-compatible fields the service accepts (fabric, targetStitchCount) per the openapi description are also worth wiring if there's a product case. For this issue, the 5 client-side numerical parameters are the priority.

Severity

Medium. The defaults are sensible but power users (the kind who buy a Brother Entrepreneur for production work) will want to tune them. Currently they can't.

Discovered by

Gap analysis (2026-10-02) of unreached service parameters.

  • Issue #117 (closed) — underlay toggle silently dropped. Same family of "RightPanel field not reaching the service."
  • Issue #116 (closed) — stitch preference detail 422s the service. The mismatch was partially fixed but detail is still in the UI (see follow-up issue).
## Finding The service's `AutoDigitizeSettings` exposes 8 numeric parameters that control how the digitize engine generates stitches: - `fillDensityMm` (default 0.4) - `satinStitchSpacingMm` (default 0.4) - `runningStitchSpacingMm` (default 0.4) - `minStitchLengthMm` (default 1.0) - `maxStitchLengthMm` (default 8.0) - `maxColors` (default 10) - `hoopSizeMm` (covered by the Hoop Size dropdown) - `stitchPreference` (covered by Balanced/Quality/Speed buttons) The RightPanel's Auto-Digitize Settings section exposes **3** of these: `stitchPreference`, `minStitchLength`, and `colorSensitivity` (which maps to `maxColors`). The other 5 (`fillDensityMm`, `satinStitchSpacingMm`, `runningStitchSpacingMm`, `maxStitchLengthMm`, and the literal `maxColors`) have no UI control. A power user who wants tighter satin stitches, looser fill, or longer jump-stitch suppression has no way to set those. They go to the service's defaults every time. ## Where - Service schema: `POST /v1/digitize` settings JSON (verified at runtime via `/openapi.json`) - Client state: `src/components/workspace/RightPanel.tsx` renders only 3 of the 8 fields - Client adapter: `src/lib/digitize-adapters.ts:55` passes the 3 known fields plus 2 others (hoopSizeMm and machineProfile) to the service ## Suggested fix shape Extend the RightPanel's Auto-Digitize Settings to expose all 8 fields: - `Fill Density` — numeric input, mm, default 0.4, range 0.1-2.0, step 0.05 - `Satin Stitch Spacing` — numeric input, mm, default 0.4, range 0.1-2.0 - `Running Stitch Spacing` — numeric input, mm, default 0.4, range 0.1-5.0 - `Max Stitch Length` — numeric input, mm, default 8.0, range 1.0-20.0 - (existing) `Min Stitch Length` — already exposed - (existing) `Max Colors` — already exposed as Color Sensitivity slider Each field stores in the workspace reducer via `SET_AUTO_DIGITIZE_SETTING` and gets sent in the digitize request payload via `toServiceSettings`. The two undocumented forward-compatible fields the service accepts (`fabric`, `targetStitchCount`) per the openapi description are also worth wiring if there's a product case. For this issue, the 5 client-side numerical parameters are the priority. ## Severity Medium. The defaults are sensible but power users (the kind who buy a Brother Entrepreneur for production work) will want to tune them. Currently they can't. ## Discovered by Gap analysis (2026-10-02) of unreached service parameters. ## Related - Issue #117 (closed) — underlay toggle silently dropped. Same family of "RightPanel field not reaching the service." - Issue #116 (closed) — stitch preference `detail` 422s the service. The mismatch was partially fixed but `detail` is still in the UI (see follow-up issue).
Author
Owner

Shipped in commit 6a20379 on main. The RightPanel now exposes all 8 service-side AutoDigitizeSettings (Fill Density, Satin Stitch Spacing, Running Stitch Spacing, Max Stitch Length, plus the existing Min Stitch Length, Color Sensitivity, Stitch Preference, Hoop Size). The 4 newly-exposed numerics were previously hard-coded in toServiceSettings; power users can now tune them per design.

Closes #137.

Shipped in commit 6a20379 on main. The RightPanel now exposes all 8 service-side AutoDigitizeSettings (Fill Density, Satin Stitch Spacing, Running Stitch Spacing, Max Stitch Length, plus the existing Min Stitch Length, Color Sensitivity, Stitch Preference, Hoop Size). The 4 newly-exposed numerics were previously hard-coded in toServiceSettings; power users can now tune them per design. Closes #137.
Mark closed this issue 2026-10-03 05:33:53 +00:00
Sign in to join this conversation.
No description provided.