POST /v1/threads/resolve + GET /v1/threads/catalog #87
Labels
No labels
blocked:children
blocked:depends-101
blocked:depends-103
blocked:depends-104
blocked:needs-attention
blocked:needs-decision
blocked:no-changes
blocked:preflight
bug
chore
feature-request
in-progress
lint-cleanup
needs-decompose
performance
quality
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/easystitch#87
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?
Phase 1: POST /v1/threads/resolve + GET /v1/threads/catalog
ΔE-2000 thread palette lookup. Two endpoints:
POST /v1/threads/resolve— input: array of hex colors, output:nearest catalog entries.
GET /v1/threads/catalog— output: the embedded Brother PR-10thread catalog (one-shot fetch, client caches).
Files:
src/service/app.py(add the two routes)src/service/models.py(ResolveRequest, ResolveResponse,CatalogResponse)
src/service/handlers/threads.pyAcceptance:
POST /v1/threads/resolvewith["#aabbcc", "#112233"]returnsthe nearest 2 catalog entries with
deltaEvalues.GET /v1/threads/catalogreturns the full PR-10 catalog as JSON(~79 entries).
time < 50ms for resolve).
src/embroidery_converter/thread_manager.py— no new algorithm.Depends on: P1 (skeleton). Independent of P2/P3 (different code
path).
Note: requires the Brother PR-10 profile from #36 so the catalog
source is correct. The catalog can be sourced separately if #36 is
in flight.
Decomposed from easystitch#31
Decomposed from easystitch#49