Summary
Collapse remaining price provider divergence into one failover stack with explicit staleness, quorum/priority rules, and Decimal outputs for both /api/price and multi-asset prices.
Why this matters
Resolution correctness depends on oracle integrity; divergent stacks and float paths risk wrong round outcomes.
Where to work
src/services/oracle.ts
src/services/priceService.ts
src/services/providers/ / price-providers/
- metrics
What to implement
- Single provider interface + registry.
- Priority/failover + stale detection.
- Decimal serialization at API boundary.
- Metrics for provider wins/failures.
- Tests for failover and all-providers-down.
Acceptance criteria
Done when
Price inputs to resolution are consistent and safe.
Metadata
| Field |
Value |
| Difficulty |
advanced |
| Complexity |
high |
| Good first contribution? |
no |
Summary
Collapse remaining price provider divergence into one failover stack with explicit staleness, quorum/priority rules, and Decimal outputs for both
/api/priceand multi-asset prices.Why this matters
Resolution correctness depends on oracle integrity; divergent stacks and float paths risk wrong round outcomes.
Where to work
src/services/oracle.tssrc/services/priceService.tssrc/services/providers//price-providers/What to implement
Acceptance criteria
Done when
Price inputs to resolution are consistent and safe.
Metadata