Skip to main content

FDC3 Intent Interoperability on C3

State 014 layers FDC3 context and intent interoperability onto the C3 TraderX runtime and adds a local Sail sidecar demo environment.

  • Inherits architectural baseline from: 012-platform-convergence-c3
  • Generated from: system/architecture.model.json
  • Canonical flows: ../001-baseline-uncontainerized-parity/system/end-to-end-flows.md

Entry Points​

  • traderx-ui: http://localhost:8080
  • sail-ui: http://localhost:8090

Architecture Diagram​

Diagram source
flowchart LR
  trader["Trader"]
  traderxUi["TraderX Angular UI"]
  traderxIngress["TraderX Ingress"]
  sailSidecar["Sail Sidecar"]
  sailDirectory["Sail App Directory Profile"]
  demoApps["Demo FDC3 Apps"]
  orderApi["Order Matcher API"]
  tradeApi["Trade Service API"]
  positionApi["Position Service API"]
  nats["NATS Broker"]
  trader -->|"Selects blotter rows and launches tickets"| traderxUi
  trader -->|"Uses Sail app launcher/resolver"| sailSidecar
  sailDirectory -->|"Provides app/intents/context metadata"| sailSidecar
  sailSidecar -->|"Routes contexts/intents to TraderX"| traderxUi
  traderxUi -->|"Broadcasts fdc3.instrument and raises intents"| sailSidecar
  sailSidecar -->|"Hosts/resolves demo app workflows"| demoApps
  demoApps -->|"Raises ticket-launch and view intents"| sailSidecar
  traderxUi -->|"Uses existing UI/API routes"| traderxIngress
  traderxIngress -->|"Trade ticket workflows"| tradeApi
  traderxIngress -->|"Order ticket and order blotter workflows"| orderApi
  traderxIngress -->|"Position blotter queries"| positionApi
  traderxUi -->|"Receives realtime pricing/order updates via nats-ws"| nats

Node Catalog​

NodeKindLabelNotes
traderactorTraderUser interacting with TraderX blotters and tickets.
traderxUiserviceTraderX Angular UITrade/order/position views plus FDC3 integration adapter.
traderxIngressgatewayTraderX IngressNGINX ingress for TraderX UI/API traffic.
sailSidecarserviceSail SidecarLocal Sail desktop-agent runtime hosted outside TraderX ingress.
sailDirectorycomponentSail App Directory ProfileSeeded app-directory records for TraderX and demo apps.
demoAppsserviceDemo FDC3 AppsChart/quote/workbench apps participating in ticker workflows.
orderApiserviceOrder Matcher APIOrder listing and lifecycle endpoints used by order flows.
tradeApiserviceTrade Service APITrade creation/query endpoints used by trade ticket flows.
positionApiservicePosition Service APIPosition/blotter data source for symbol-selected rows.
natsserviceNATS BrokerRealtime ticker and lifecycle updates via websocket gateway.

State Notes​

  • FDC3 integration is additive and frontend-scoped.
  • No backend API or schema changes are required for core interoperability behavior.
  • Sail sidecar is intentionally outside TraderX ingress to keep concerns separated.
  • Degraded mode preserves baseline workflows when DesktopAgent is unavailable.