COS-DSN-001
Design Queue — Coral & CAD Work
Purpose
The designer sees their prioritised queue, picks up a job, accesses the brief and reference images in a secure read-only view, completes their design in their local tool, and submits the file back into the system — without needing WhatsApp for any part of this.
Actors
| Actor | Type | Role |
|---|---|---|
| Coral designer (Saurabh / Suresh / Ganesh) | Freelance | Works on 2D Coral layouts |
| CAD designer (Calcutta team) | Internal | Works on 3D CAD files |
| Anupam | Internal | CAD queue head, monitors, does internal QC |
Trigger
Job state = COREL_QUEUED or CAD_QUEUED. Job appears in designer queue.
Full Flow
1. Designer opens their queue (mobile or web)
2. Jobs listed by AI priority score
3. Designer taps "Start Work" on top job
4. System:
→ state = COREL_IN_PROGRESS | CAD_IN_PROGRESS
→ current_owner_id = designer
→ SLA timer starts
→ job_event { event_type: "work.started" }
5. Designer views brief:
→ Category, metal, stones, budget, instructions
→ Reference images (watermarked, read-only)
→ Customer history notes
→ Estimated weight range + diamond range (auto from budget formula)
→ Prior designs for this customer in same category
6. Designer works in local tool (Coral Draw or Rhino/Matrix)
— outside the system on their workstation
7. Designer uploads completed work:
→ Coral: image file (JPG/PNG)
→ CAD: .3dm file + render image + weight report
8. Designer fills submission form (weight, carats, notes)
9. Designer taps "Submit for Review"
10. System:
→ Stores file: jobs/<job_id>/design/v<n>.<ext>
→ state = COREL_SUBMITTED | CAD_SUBMITTED
→ Notifies Anupam (CAD) or RM (Coral)
→ job_event { event_type: "design.submitted" }
Queue Card
┌─────────────────────────────────────────────┐
│ CJ-2026-001234 [Hip Hop] [Pendant] │
│ Client: Icechamp Priority: ●●●●○ │
│ │
│ [ref image] $8,000 · 14kt WG │
│ Natural VVS · Bussdown │
│ │
│ Received: 2h 14m ago SLA: 21h 46m left │
│ [Start Work] │
└─────────────────────────────────────────────┘
SLA turns yellow at 50% elapsed, red at 80%.
File Versioning
jobs/CJ-2026-001234/design/v1_coral.jpg
jobs/CJ-2026-001234/design/v2_coral.jpg ← if revised
jobs/CJ-2026-001234/design/v1_cad.3dm
jobs/CJ-2026-001234/design/v1_cad_render.png
jobs/CJ-2026-001234/design/v1_cad_weight.pdf
Old versions never deleted.
Business Rules
| Rule | Detail |
|---|---|
| One job IN_PROGRESS at a time per designer | Prevents pile-up |
| CAD: weight + carat required on submit | Blocks submission without these — needed for pricing |
| Coral: approx carat required on submit | Needed for pricing estimate |
| SLA breach | Alert designer → Alert Anupam (L1) → Alert Aayushi (L2) |
| Watermarking | Reference images watermarked with customer name + date. Originals untouched. |
| Air-gap | Brief on mobile/tablet only. Files transferred to workstation via secure channel. |
| Weight > 30% over budget | System warning on submit. Designer must acknowledge. |
API Endpoints
GET /queues/:queue_name/jobs?designer_id=:id
POST /jobs/:job_id/start-work
GET /jobs/:job_id/brief
POST /jobs/:job_id/design-submit
Body: { file uploads, weight_g, carats, notes }
GET /jobs/:job_id/files
Out of Scope
| Item | Handled in |
|---|---|
| Internal review | COS-DSN-002 |
| AI manufacturability check | COS-AIE-001 |
| Pricing | COS-PRC-001 |