02 — System Diagram

🔍 Open the Interactive Diagram Viewer — pan, zoom, per-area tabs, the full ERD and a focus mode. Supplier is the hub table, so its links can be hidden to declutter the overview.

Regenerate the viewer after any DSL, menu_config.yaml or diagram_config.yaml change: python scripts/build_diagram_viewer.py supplier.

flowchart TD
  S[Supplier]
  SITE[SupplierSite]
  CON[SupplierContact]
  CAP[SupplierCapability]
  APR[SupplierApproval]
  ITEM[SupplierItem]
  PERF[SupplierPerformance]
  ISS[SupplierIssue]
  CA[SupplierCorrectiveAction]

  S --> SITE
  S --> CON
  SITE --> CON
  S --> CAP
  S --> APR
  CAP --> APR
  S --> ITEM
  S --> PERF
  S --> ISS
  ISS --> CA

Where it sits in the network

sequenceDiagram
  participant P as Purchasing
  participant I as Inventory
  participant O as Orchestrator
  participant S as Supplier
  P->>S: supplier.search_suppliers (direct, read-only — the supplier picker)
  P->>O: purchasing.order_placed
  O->>S: deliver (order counted)
  P->>O: purchasing.delivery_delayed (missed)
  O->>S: deliver (late delivery, delivery issue SI-…)
  I->>O: inventory.receipt_rejected
  O->>S: deliver (rejection counted, quality issue SI-…)
  S->>O: supplier.issue_opened