EXTENDED DOCUMENTATION
Operations
Goals
- no silent loss for accepted requests
- explicit backlog instead of overload collapse
- feed publication remains highest priority
- network selection stays config-driven, not topology-driven
Priority Model
DataFeed lane
The DataFeed CVM is isolated from interactive request/response work.
Use this lane for:
- scheduled price synchronization
- feed publication
- feed-specific relayer processing
This lane must stay available even if Oracle request traffic spikes.
Oracle lane
The Oracle CVM handles:
- confidential oracle requests
- confidential compute
- NeoDID private flows
- callback result generation
This lane can absorb queueing and retries. DataFeed should not share its capacity envelope.
Durability Model
Chain-originated requests
- relayer events are persisted before checkpoints advance
- retries and dead-letter state are written to Supabase
- recovery happens from durable state, not worker memory
Control-plane requests
- control-plane jobs are persisted in
- and are queue-backed
- and are workflow-backed
- stale or overdue jobs can be recovered with
Backpressure Rules
- backlog is preferred over dropping work
- stale jobs are recoverable
- retryable errors move jobs back to
- is used for exponential backoff and jitter
- relayer freshness and retry budgets should be tuned from measured load, not guesses
Key Runtime Controls
Worker inflight caps
Relayer backpressure
Control-plane recovery
Observability
Default production stack:
- Sentry for exceptions
- Checkly for browser and API synthetics
- Better Stack for uptime, heartbeats, and telemetry
Optional:
- Grafana Cloud for deeper relayer metrics
Capacity Testing
Use the stress harness before changing queue budgets:
Interpretation:
- testnet results define a conservative lower bound
- Oracle and DataFeed capacities must be measured separately
- production tuning should be based on p95, p99, timeout, and recovery behavior
Recovery Checklist
- confirm the affected lane: Oracle or DataFeed
- inspect control-plane job state or relayer job state
- recover stale jobs instead of replaying blindly
- verify signer identity and updater identity before resuming broadcasts
- confirm feed publication is healthy before draining lower-priority queues
CURRENT DESIGNUPDATED FOR DUAL-CVM ARCHITECTURE