Decompose: Add HTTP service layer (FastAPI) exposing the EmbroideryPipeline — Phase 3: POST /v1/export #48
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#48
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 3: POST /v1/export
Take pre-computed stitch objects (already in the client or returned by
P2) and emit a binary embroidery file in the requested format.
Files:
src/service/app.py(add/v1/exportroute)src/service/models.py(ExportRequest, ExportResponse orbinary response)
src/service/handlers/export.pyAcceptance:
POST /v1/exportwith stitch objects andformat=pesreturns avalid PES file body. Header check: starts with
#PES0001or thecorrect v1 magic for the requested PES version.
format=dst,format=exp,format=jefeach return a valid filewith the correct magic bytes for that format.
X-Stitch-CountandX-Color-Countheaders.transformation in the service layer).
Depends on: P1 (skeleton), P2 (routing pattern). Independent of
P2's data path — accepts stitch objects from any source.
Decomposed from easystitch#31
Cross-link: ThreadCraft #11 — this phase is the /v1/export endpoint used by ThreadCraft #2 (PES export).
This issue has been decomposed into the following sub-issues:
Each sub-issue awaits triage pipeline assessment before queue routing.